繁体   English   中英

如何删除包含特定模式并具有“模式文件”的行?

[英]How can I remove lines containing a specific pattern and have a “pattern file”?

例如,特征码文件包含:

thepiratebay.org
some-url.com

基本上,具有这些模式的行需要从文件中删除。 我怎样才能做到这一点? 我更喜欢使用核心工具的方法。

使用grep

grep -vf pattern-file data-file  > new-file
mv new-file data-file

-v给出不包含模式的行

-f指定一个包含模式的文件

sed也可以用于此操作。

 sed -i '/thepiratebay.org/d;/some-url.com/d' inputfile.txt

d选项在找到/pattern/之后删除该行。 FreeBSD/MacOS使用-i.bak

-i选项可就地编辑文件并一次性覆盖它。 -i.bak相同,但是将原始文件复制到inputfile.txt.bak

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM