如何在 shell 脚本中逐行合并两个文件?
How to merge two files line by line in shell script?
我想合并两个输入文件,第一个文件加上第二个不重复的文件的内容(只考虑用逗号分隔的第一个参数)。我如何在 .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[]++' file1 file2
1,A
2,B
3,C
4,B
5,D
说明
-F','
使用逗号作为字段分隔符
!a[]++
的快捷方式如果您以前从未见过字段 #1,请打印整行
由于问题没有明确排除此类技术,这里有另一种方法:
sort file1 file2
sort
实用程序合并文件并对结果进行排序,在上述情况下,输出到标准输出。
我想合并两个输入文件,第一个文件加上第二个不重复的文件的内容(只考虑用逗号分隔的第一个参数)。我如何在 .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[]++' file1 file2
1,A
2,B
3,C
4,B
5,D
说明
-F','
使用逗号作为字段分隔符!a[]++
的快捷方式如果您以前从未见过字段 #1,请打印整行
由于问题没有明确排除此类技术,这里有另一种方法:
sort file1 file2
sort
实用程序合并文件并对结果进行排序,在上述情况下,输出到标准输出。