我有一个类似如下合并两个文件共柱
第一个文件的两个文件:
FileA
FileB
FileC
第二个文件:
FileA 2
FileC 2
我想要的第三文件看起来如下所示:
FileA FileA 2
FileB
FileC FileC 2
基本上我正在做一个选择性粘贴。为了达到预期的结果,我愿意接受任何awk或sed解决方案。
我有一个类似如下合并两个文件共柱
第一个文件的两个文件:
FileA
FileB
FileC
第二个文件:
FileA 2
FileC 2
我想要的第三文件看起来如下所示:
FileA FileA 2
FileB
FileC FileC 2
基本上我正在做一个选择性粘贴。为了达到预期的结果,我愿意接受任何awk或sed解决方案。
使用awk的,你可以这样做:
awk 'FNR == NR{a[$1]=$0; next} {print $0, a[$1]}' file2 file1
FileA FileA 2
FileB
FileC FileC 2
它是加入工作:
join -a1 -o 1.1 2.1 2.2 file1 file2
这是更好的解决方案。使用'awk'就像重新发明轮子。或者使用通用计算机(awk)作为嵌入式控制器(连接)。 – alvits
@alvits:也许对于这种情况,但awk解决方案也能够处理未排序的文件,并且不需要掩码(如果第二个文件具有更多字段,这可能很有用)。 –
的可能的复制[如何使用AWK合并两个文件?(http://stackoverflow.com/questions/5467690/how-to-merge-two-files-awk) – SriniV