最後の改行を除くすべての改行をスペースで置き換えるにはどうすればよいですか。 tr
を使用してすべての改行をスペースに置き換えることができますが、いくつかの例外を除いてどのようにそれを行うことができますか?
paste -s -d ' ' file.txt
を使用できます。
$ cat file.txt
one line
another line
third line
fourth line
$ paste -s -d ' ' file.txt
one line another line third line fourth line
tr
を使用してすべての改行をスペースに置き換え、出力をsed
に渡し、最後のスペースを改行に戻すことができます。
tr '\n' ' ' < afile.txt | sed '$s/ $/\n/'
ファイルが十分に小さい場合、Perlで vonbrandのアイデア を再実装します。
Perl -p00e 's/\n(?!\Z)/ /g' your_file