[英]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.