簡體   English   中英

比較兩個文件和不匹配的打印行

[英]Compare Two Files and Print Lines That Don't Match

我正在嘗試比較兩個文件(文件1和文件2),並從文件1中打印出與文件2中的列表匹配的整行-理想情況下是在新的.txt文件中,但是當我運行awk時,它不打印任何內容。

file1 example                    file2 example
12345 /users/test/Desktop        543252 
54321 /users/test/Downloads      12345  
0000  /users/test/Desktop        11111
                                 0000

expected output
54321 /users/test/Downloads 

我嘗試過的命令是

awk 'NR==FNR{a[$1]++;next};a[$1] ==0' file1.txt file2.txt

理想情況下,我希望能夠將其構建到我正在編寫的python程序中(不知道是否可行),如果我不滿意它可以在linux終端上運行。

任何想法或指示將不勝感激。

您必須像下面那樣糾正

awk 'FNR==NR{ a[$1]; next } !($1 in a)' file2 file1

您可以使用grep獲得預期的輸出:

grep -vf file2 file1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM