私はsed '/pattern/d' file > newfile
を使ってテキストファイルのいくつかの行を削除しましたが、新しいファイルには多くの空白行が残っていました。sedによって書かれた新しいファイルの空白行
空行を避けるためにコマンドを変更するにはどうすればよいですか?
私はsed '/pattern/d' file > newfile
を使ってテキストファイルのいくつかの行を削除しましたが、新しいファイルには多くの空白行が残っていました。sedによって書かれた新しいファイルの空白行
空行を避けるためにコマンドを変更するにはどうすればよいですか?
sed '/pattern/d; /^$/d' file > newfile
sed '/^$/d' file >newfile
でファイルに空行を削除するための正規表現についていくつかの良い議論があなたのためにそれを行います...があります。
コマンドを使用すると、削除する行はすべて削除されますが、元のファイルの空白行はそのまま残ります。あまりにもこれらを削除するには、単に入力に2つ目のフィルタを適用します。
$ sed -e '/pattern/d' -e '/^[:blank:]*$/d' <file >newfile
第二のフィルタが空の行を削除します、またはそれは、その外観に「空白」だけ空白文字(すなわち、含まれています)。
ファイルに 'cat -A file'や' cat -v file'を入れてください。 – Cyrus
@Cyrus '-A'は元のファイルの空白行をたくさん示しています。 '-v'はテキストを出力します。 – Lee
[SEDを使用して空の行を削除](http://stackoverflow.com/questions/16414410/delete-empty-lines-using-sed)の可能な複製 – hek2mgl