需要使用sed命令删除以###开头的文件中的每一行。

4

如何删除以三个#开头的行

例如需要从文件中删除以下所有行:

1 ### 嘻嘻哈哈

2 ### 哈哈嘻嘻

3 ### 嘻哈

. . .

谢谢 Yael


可能是重复的问题:sed+删除以“###”开头并且包含行首空格的行 - Dennis Williamson
2个回答

6
cat file | sed '/^###/d'

如果你不使用它,它会一直停留很长时间 ;) - Steve Weet
3
你可以将文件作为sed的输入进行处理。命令是:sed '/^###/d' file - ghostdog74
从我的角度来看,最好使用awk,但是如何改变sed以实现awk的功能呢? - yael
@unbeli,你指的是什么?我在谈论你提出的 sed ... < file 中的“<”符号。这在技术上与 cat file| sed ... 不同。那么我重复了哪一部分呢? - ghostdog74
1
@所有人。我们能否认同sed将从标准输入(无论是通过管道还是重定向)或从命令行上提供的一个或多个文件名中读取输入参数。这个评论线程变得有些荒谬了。 - Steve Weet
显示剩余6条评论

3

你也可以使用awk

awk '!/^[ \t]*###/' file

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接