Awk
solução:
awk 'NR==FNR{ a[$1]=$2; next }$1 in a{ $2=a[$1]; print }' file2.txt file1.txt
A saída:
key1 22
key1 22
key1 22
key1 22
key2 23
key2 23
key3 24
key3 24
key3 24
Ou simplesmente com o comando join
:
join -o1.1,2.2 file1.txt file2.txt