このように出力をリダイレクトする場合は、改行文字を削除できますか?
echo "a" >> file
私のスクリプトには、すべての文字(数値を除く)をファイルにリダイレクトするforループを含む同様のものがあります。しかし、私の目標は、この出力を1行に入れることです。 「a」を10回リダイレクトしたと仮定すると、次のようになります。
a a a a a a a a a a
しかし、それは次のとおりです。
a
a
a
a
[etc.]
ベストアンサー1
具体的に要求する場合は、次のように改行を抑制echo
できます-n
。
$ echo -n "test" >> outputfile
パイプまたはリダイレクトされたデータで改行を抑制する方法をより一般的に尋ねる場合は、次のツールを使用してください。たくさん肌。簡単な方法は次のとおりですtr
。
$ do_stuff | tr -d "\n" >> outputfile
スクリプトとデータ出力を開始したばかりの場合は、次のようにecho
正しく使用する習慣を捨てることをお勧めしますprintf
。
$ printf "test" >> outputfile
printf
さまざまな点で、さまざまな理由で優れていますecho
。その中で最も重要なのはただ明示的に指示した内容を印刷します(もっと重要なのは、目的の形式で印刷することです)。