我想合并两个输入文件,结果是第一个文件加上第二个文件的内容,该文件没有重复(仅考虑用逗号分隔的第一个参数(。如何在.sh中实现这一点?下面是示例数据。谢谢
我有什么
file1 file2
1,A 1,B
2,B 2,B
3,C 4,B
5,D
期望的输出
file1
1,A
2,B
3,C
4,B
5,D
Awk 对于这类事情来说排序得很好
$ awk -F',' '!a[$1]++' file1 file2
1,A
2,B
3,C
4,B
5,D
解释
-F','
使用逗号作为字段分隔符!a[$1]++
如果您以前从未见过字段 #1,请打印整行的快捷方式
由于问题没有明确排除此类技术,因此这是另一种方法:
sort file1 file2
sort
实用程序合并文件并对结果进行排序,在上述情况下,输出到 stdout。