【发布时间】:2013-04-12 10:26:07
【问题描述】:
我一直在尝试从 csv 中删除特定列中的条目与其他 csv 中的条目匹配的行(记录)。
csv结构大致是这样的:
1.csv
Col1,Col2,Col3,Col4,Col5
sasdf,3432,fjkdk,fjjof,1234
efvr,4565,fhjs,dihi,9999
asa,234,rgs,fkjf,0102
aaa,456,jfvv,dofh,4565
ths,7865,fhjf,fhks,3212
2.csv
Col1
1234
3212
0102
4565
如您所见,1.csv 的 col5 中有一些值出现在 2.csv 的 col1 中 我想使用 awk 从 1.csv 中删除与 2.csv 的 col1 匹配的行(记录)
所以输出应该是这样的:
3.csv
Col1,Col2,Col3,Col4,Col5
efvr,4565,fhjs,dihi,9999
这是我使用的 awk 脚本:
awk -F"," 'NR==FNR{array1[FNR]=$1};NR>FNR{array1[FNR]!~$5}' 2.csv 1.csv > 3.csv
没有用。
【问题讨论】:
-
我不确定您为什么认为完全更改输入文件会有所帮助。仅在提问时发表代表意见。
-
哦,我会处理好这件事的..