使用Grep的新功能。基本上我有两个文本文件; blacklist.txt和许多foo.txt在不同的目录中。 我开始使用:
grep -vE "(insert|blacklist|items|here)" foo.txt > filtered_foo.txt
但是我的黑名单呈指数级增长,所以我需要比较两个文件。
在foo.txt中有四列,列1,2,3是唯一的。我想删除列4匹配黑名单中的字符串的行。
foo.txt的样本
A1 A2 A3 Bob
B1 B2 B3 Anne
C1 C2 C3 Henry
D1 D2 D3 Ted
blacklist.txt
Anne
Ted
所需的输出:filtered_foo.txt
A1 A2 A3 Bob
C1 C2 C3 Henry
我在grep中尝试了不同的东西,例如:
grep -vF "'cat blacklist.txt'" foo.txt > filtered_foo.txt
答案 0 :(得分:1)
使用-f
选项从文件中获取模式。
grep -vF -f blacklist.txt foo.txt > filtered_foo.txt