例如,模式文件包含:
thepiratebay.org
some-url.com
基本上,需要从文件中删除具有这些模式的行。我怎样才能做到这一点?我更喜欢使用核心工具的方法。
答案 0 :(得分:2)
使用grep
:
grep -vf pattern-file data-file > new-file
mv new-file data-file
-v
给出不包含模式的行
-f
指定包含模式的文件
答案 1 :(得分:0)
sed
也可以用于此操作。
sed -i '/thepiratebay.org/d;/some-url.com/d' inputfile.txt
找到d
后, /pattern/
选项会删除该行。对-i.bak
使用FreeBSD/MacOS
。
-i
选项就地编辑文件并一次性覆盖它。 -i.bak
也会这样做,但会将原始文件复制到inputfile.txt.bak
。