Sed 通过比较2个文件来左外连接
我有2个文件,如下所示:Sed 通过比较2个文件来左外连接,sed,awk,grep,Sed,Awk,Grep,我有2个文件,如下所示: success.txt amar akbar anthony john jill tom fail.txt anthony tom 我想从suces.txt中删除那些与fail.txt匹配的记录 Expected output: amar akbar john jill 如果可以的话,我会使用固定字符串,这样会更有效 fgrep -v -x -f fail.txt success.txt 您需要使用-x选项来确保只匹配整行,否则失败(如tom)将匹配成功(如to
success.txt
amar
akbar
anthony
john
jill
tom
fail.txt
anthony
tom
我想从suces.txt中删除那些与fail.txt匹配的记录
Expected output:
amar
akbar
john
jill
如果可以的话,我会使用固定字符串,这样会更有效
fgrep -v -x -f fail.txt success.txt
您需要使用-x选项来确保只匹配整行,否则失败(如tom)将匹配成功(如tomas)。awk one liner:也保持原始顺序
awk 'NR==FNR{a[$0]=1;next;}!($0 in a)' fail.txt success.txt
在所有现代Unix系统中都有join1程序
输出顺序是否重要,或者是否可以排序?是否可以排序。但最好保持同样的秩序。我不确定这是否会起作用,cat success.txt | grep-v-f fail.txt会起作用,只是可能会删除一些额外的名称,例如“tom”将与“tomas”匹配。
$ join -v1 success.txt fail.txt