5

如何删除文本文件中不以字符开头的所有行#&或者*?我正在寻找使用sedor的解决方案grep

4

3 回答 3

6

删除行:

grep

来自http://lowfatlinux.com/linux-grep.html

grep命令从文件(或一堆文件)中选择并打印与模式匹配的行。

我认为你可以这样做:

grep -v '^[\#\&\*]' yourFile.txt > output.txt

你也可以sed用来做同样的事情(检查http://lowfatlinux.com/linux-sed.html):

sed '^[\#\&\*]/d' yourFile.txt > output.txt

由您决定


过滤线:

我的错误,我知道您想删除这些行。但是,如果您想“删除”所有其他行(或过滤以指定字符开头的行),那么grep方法就是:

grep '^[\#\&\*]' yourFile.txt > output.txt
于 2013-04-04T22:44:07.437 回答
3
sed -n '/^[#&*].*/p' input.txt > output.txt

这应该有效。

 sed -ni '/^[#&*].*/p' input.txt

这个会直接编辑输入文件,小心+

于 2013-04-05T10:15:58.157 回答
2
egrep '^(&|#|\*)' input.txt > output.txt
于 2013-04-04T22:45:56.793 回答