2016-07-05 103 views
1

我有一個類似如下合併兩個文件共柱

第一個文件的兩個文件:

FileA 
FileB 
FileC 

第二個文件:

FileA 2 
FileC 2 

我想要的第三文件看起來如下所示:

FileA FileA 2 
FileB 
FileC FileC 2 

基本上我正在做一個選擇性粘貼。爲了達到預期的結果,我願意接受任何awk或sed解決方案。

+0

的可能的複製[如何使用AWK合併兩個文件?(http://stackoverflow.com/questions/5467690/how-to-merge-two-files-awk) – SriniV

回答

1

使用awk的,你可以這樣做:

awk 'FNR == NR{a[$1]=$0; next} {print $0, a[$1]}' file2 file1 

FileA FileA 2 
FileB 
FileC FileC 2 
2

它是加入工作:

join -a1 -o 1.1 2.1 2.2 file1 file2 
+0

這是更好的解決方案。使用'awk'就像重新發明輪子。或者使用通用計算機(awk)作爲嵌入式控制器(連接)。 – alvits

+0

@alvits:也許對於這種情況,但awk解決方案也能夠處理未排序的文件,並且不需要掩碼(如果第二個文件具有更多字段,這可能很有用)。 –