最後の改行を除くすべての改行をスペースに置き換えるにはどうすればよいですか。を使用してすべての改行をスペースに置き換えるtrことができますが、いくつかの例外を除いてどのように行うことができますか?
最後の改行を除くすべての改行をスペースに置き換えるにはどうすればよいですか。を使用してすべての改行をスペースに置き換えるtrことができますが、いくつかの例外を除いてどのように行うことができますか?
回答:
ファイルが十分に小さい場合、vonbrandのアイデアをPerlで再実装します。
perl -p00e 's/\n(?!\Z)/ /g' your_file
これは私のために働いた。
tr '\n' ' ' < file_with_new_line | sed 's/\ $//g' > file_with_space
trコマンドは置き換えられ、すべてのスペースと改行をし、あなたのsedコマンドは、最後のスペースを削除します。これにより、最終改行のないファイルが作成されるため、質問の対象とはなりません。ちなみに、コマンドで使用gするポイントintはありませんsed。を使用しているので$、最後でのみ一致することができ、これgは無意味です。また、スペースをエスケープする必要はありません。「」でも違いはありません。
-sおよび-dオプションは、このような場合のために作られたように見えます。