【发布时间】:2018-07-24 05:12:56
【问题描述】:
我有一个大约 10,000 行的 CSV。一个字段
.000.000.000
.111.111.111
etc
我需要对照 400,000 行左右的主列表检查上述内容,再次检查所有字段
.0
.1
.3
and up
最好的方法是什么?我用 -f 尝试了一个 grep 但我觉得它没有做任何事情
grep -f [file1][file2]
它没有返回任何结果,但我也没有给出我认为它需要的输出。
我也尝试了 awk,但它只是我发现的东西,并没有真正理解它。所以再一次没有得到我想要的结果。
awk -F, 'NR>1&&NR==FNR{a[$1];next}FNR>1&&($1 in a){print $1,"in both!"}'
如果可能的话,我想把它做成一个脚本,但如果不是越简单越好。我真的在做这个检查是为了勤奋,但我 90% 确定我的小列表在大文件中没有匹配的行。但是当检查是这种情况时,我需要某种确认。
【问题讨论】:
-
发布更可测试/扩展的输入样本和预期结果
-
检查这个:stackoverflow.com/questions/33523362/… 与记事本++一起使用的其他方式
-
Mac 用户听起来不错
-
当每个文件中只有 1 个字段时,为什么还要将这些文件称为 CSV?要么它们是 CSV,并且您没有与我们分享您的输入文件,要么它们不是 CSV,
-
它们是具有更多字段的较大文件,但我删除了所有其他字段..所以它只是文件当前保存为的格式..