我在一个文件夹中有一个不确定数量的csv文件。所有CSV只有一列具有不同的行数,如下所示:
File1.csv
rs1000
rs2000
rs4000
rs5000
...
我想比较该文件夹中的所有CSV文件,并输出一个CSV文件,其中只包含所有文件中共有的行。 我有这个命令:
awk -F'|' 'NR==FNR{c[$1$2]++;next};c[$1$2] > 0' *.csv > out_p.csv
但它显示的行不在所有文件中。
答案 0 :(得分:1)
我没有测试,但它应该可以工作。
*.csv
[field]
个文件的数量相同的行。答案 1 :(得分:0)
尝试这样的事情:
awk '{ array[$1]++ } END { for(i in array) { if(array[i] > 1) print i } }' *.txt
每个csv文件只有一列,因此您不需要指定字段分隔符,如果在所有csv文件中存在多行,则会打印一行。