Diff
如何使用 diff 從 a.txt 文件中獲取缺失的行?
我有以下文件:
一個.txt
1 2 11 22 33 444
b.txt
1 2 3 11 22 33 555
我想從 a.txt 中檢索 b.txt 上不存在的行。
我試過了:
diff a.txt b.txt -d 2a3 > 3 6c7 < 444 --- > 555
但我希望輸出是
444
僅有的。有沒有辦法在差異上放置某種過濾器?
使用會更好
grep
grep -f b.txt -v a.txt
鍵
-f
將定義b.txt
為要搜尋的模式列表a.txt
。並且 key-v
將從a.txt
沒有找到模式的地方反轉搜尋和列印輸出行。
diff
可能是錯誤的工具,請grep
改用:grep -vxf b.txt a.txt
a.txt
即從不存在的任何行中獲取b.txt
或者,
comm
可以通過抑制兩個文件和第二個文件中的行來工作:comm -23 <(sort a.txt) <(sort b.txt)