CSV 删除第二列中的重复项而不删除第一行



我有一个 csv,有 17 列和许多 1000 行。 在第 2 列中,我试图删除重复项,但保留第一个。

文件示例:

1001,Henry
1002,Dave
1003,Dave
1004,Tom

当我运行时:

sort -t, -k2,2 -u file.csv -o newfile.csv

新文件.csv包含(错误(

1001,Henry
1004,Tom

期望的输出:

1001,Henry
1002,Dave
1004,Tom

我也尝试了几件事,没有运气。 提前感谢!

试试这个,

awk -F ',' '!seen[$2]++' file.csv > newfile.csv

此命令告诉 awk 要打印哪些行。变量 $2 保存第 2 列的全部内容,方括号是数组访问。因此,对于文件名中每第二行,如果之前未设置该节点(column2(的内容,则名为 seen 的数组的节点将递增并打印该行。

最新更新