com awk
$ awk 'NR==FNR {a[$1]=$2; next}; a[$1] {$1=a[$1]} 1' File2 File1
ID1 36987
ID2 75685
ID3 12345
id4 12896
Como posso substituir a coluna 1 em File1
pela coluna 2 em File2
quando uma correspondência é encontrada?
File1
id1 36987
id2 75685
id3 12345
id4 12896
File2
id1 ID1
id2 ID2
id3 ID3
id5 ID5
Eu gostaria de escrever isso em outro File3
, que deve se parecer com:
File3
ID1 36987
ID2 75685
ID3 12345
id4 12896
Atualmente estou tentando (sem sucesso):
sed 'File2.txt | awk '{print "-e s/"$1"/"$2"}''<<< "File1.txt"
Eu usaria sed
para gerar o script sed
:
sed 's=^=s/=;s= =/=;s=$=/=' File2 | sed -f- File1