一致するものが見つかったら、列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
答え2
sed
生成に使用するスクリプトはsed
次のとおりです。
sed 's=^=s/=;s= =/=;s=$=/=' File2 | sed -f- File1