我有两个输入文件。
我需要比较file1和file2,并在两个文件中组合具有相同第一个字段的行。 (该行的其余部分可以忽略该行的其余部分。)
理想情况下,我希望输出文件中的字段是管道分隔的。
我在想一个简单的shell脚本就是我所需要的。
文件1
0001|14
9934|3
4555|33
file2的
0001|coffee|grocery store
0003|gasoline
0005|pickup sticks
9934|protein bars
4555|car
期望的输出:
file3的
0001|14|0001|coffee|grocery store
9934|protein bars
4555|33|4555|car
非常感谢任何帮助。
答案 0 :(得分:0)
使用awk:
awk 'BEGIN{FS=OFS="|"} FNR==NR {a[$1]=$0; next} $1 in a {print a[$1], $0}' f1 f2
0001|14|0001|coffee|grocery store
9934|3|9934|protein bars
4555|33|4555|car