1
我有2個文件new.csv & remove.txt。我正在使用AWK從生成的任何新csv文件中使用主文件刪除文件。這些文件是:使用Awk刪除重複文件
$ cat new.csv
james,smith,bronx,2025555551
adam,stephenson,brooklyn,2025555552
anthony,jackson,queens,2025555553
mary,young,astoria,2025555554
marsha,peterson,madison,2025555555
angie,huff,belk,2025555556
則有:
$ cat remove.txt
2025555550
2025555553
2025555555
2025555557
2025555558
2025555559
我的命令是:
$ awk -F, 'NR==FNR{remove[$4]++;next}!($4 in remove)' remove.txt new.csv > final.csv
這給了我原來一樣的,就像這樣:
$ cat final.csv
james,smith,bronx,2025555551
adam,stephenson,brooklyn,2025555552
anthony,jackson,queens,2025555553
mary,young,astoria,2025555554
marsha,peterson,madison,2025555555
angie,huff,belk,2025555556
我該如何得到它?
$ cat final.csv
james,smith,bronx,2025555551
adam,stephenson,brooklyn,2025555552
mary,young,astoria,2025555554
angie,huff,belk,2025555556
要刪除的列不是'remove.txt'中的'$ 4',您需要'remove [$ 1] ++'。 –
@Etan Reisner - 這正是我所需要的。謝謝!因此,對於任何運行此命令的人來說,它是'$ awk -F,'NR == FNR {remove [$ 1] ++; next}!(刪除$ 4)'remove.txt new.csv> final.csv'。 –
@Peaceful_Warrior您應該將解決方案作爲答案發布並接受它。 – Xebax