我有兩個文字檔:
第一個文字檔:
Hello
Hi
Hola
Bonjour
第二個文字檔:
Hi
Bonjour
無論行號如何,我如何輸出它們之間的差異,即我想保存輸出
Hello
Hola
進入一個新的文字文件
答案1
目前尚不清楚「差異」的含義,但以下是滿足您給定輸入和輸出的內容:
$ cat >1
Hello
Hi
Hola
Bonjour
$ cat >2
Hi
Bonjour
$ diff --old-line-format='' <(sort 1) <(sort 2) >new
$ cat new
Hi
Bonjour
答案2
要輸出第一個檔案中存在但第二個檔案中不存在的整行:
grep -vxFf second first
或者,對文件進行排序,然後使用comm
:
comm -23 <(sort first) <(sort second)
答案3
使用awk指令可以解決這個問題:
awk 'NR==FNR{uu[$1]=1}NR!=FNR&&uu[$1]!=1{print}' second first