sed写的新文件中的空白行

时间:2016-06-20 16:56:38

标签: text sed text-processing

我使用sed '/pattern/d' file > newfile删除文本文件中的某些行,但新文件中还有很多空行。

如何修改命令以避免空行?

3 个答案:

答案 0 :(得分:1)

sed '/pattern/d; /^$/d' file > newfile

关于在this Stack Overflow post

中删除文件中空行的正则表达式,有一些很好的讨论

答案 1 :(得分:0)

sed '/^$/d' file >newfile

...会为你做的。

答案 2 :(得分:0)

您使用的命令将删除您要删除的所有行,但它会保留原始文件中已存在的空白行。要删除这些,只需将第二个过滤器应用于输入:

$ sed -e '/pattern/d' -e '/^[:blank:]*$/d' <file >newfile

第二个过滤器将删除空行或仅包含空白字符的行(即,&#34;空白&#34;在其外观中)。