cutコマンドの予期しない出力

cutコマンドの予期しない出力

次のコマンドを使用して、スクリプトのキーと値のペアの出力をcsvファイルに変換しようとしています。

cat config/password | ssh -tt -J support@$gateway support@$ip "$(<${base}/systemkv.sh)" 3>/dev/null | tee /tmp/log | cut -d ':' -f2 | paste -s -d ',' - | tee -a /tmp/output.csv

上記のコマンドは、最後の行のみを表示するか、最後の行が他の行と重複します。

cutコマンドは以下のコマンドと完全に機能しますが、sudoコマンドは許可しません。

cat config/password | ssh -J support@$gateway support@$ip "$(<${base}/systemkv.sh)" 3>/dev/null | tee /tmp/log | cut -d ':' -f2 | paste -s -d ',' - | tee -a /tmp/output.csv

期待される出力

first:Sujit
last:Maharjan
Sujit,Maharjan

実際の出力

first:Sujit
last:Maharjan
,Maharjan

ベストアンサー1

犯人はキャリッジリターン文字のようです。を使用して\ rを削除しました。

ssh ... | tr -d '\r' | ...

これでコマンドは完全に機能します。

助けてくれた@Jeff Schallerと@Haxielに感謝します。

おすすめ記事