シェルを使用した熱交換

シェルを使用した熱交換

一致するものが見つかったら、列1をFile1列2にどのように置き換えますか?File2

File1
id1 36987
id2 75685
id3 12345
id4 12896

File2
id1 ID1
id2 ID2
id3 ID3
id5 ID5

私はこれを他のものの上に書きたいと思いますFile3。次のようにする必要があります。

File3
ID1 36987
ID2 75685
ID3 12345
id4 12896

私が現在試しているもの(失敗):

sed `File2.txt | awk '{print "-e s/"$1"/"$2"}'`<<< "File1.txt" 

ベストアンサー1

そしてawk

$ awk 'NR==FNR {a[$1]=$2; next}; a[$1] {$1=a[$1]} 1' File2 File1
ID1 36987
ID2 75685
ID3 12345
id4 12896

おすすめ記事