私のファイル:
file1.txt
=========
key1
key1
key1
key1
key2
key2
key3
key3
key3
key4
key4
file2.txt
=========
key1 22
key2 23
key3 24
Expected Output :
==================
key1 22
key1 22
key1 22
key1 22
key2 23
key2 23
key3 24
key3 24
key3 24
私が見つけたすべての解決策は文字列と繰り返し一致しません。
awk '{a[$1]=a[$1]" "$2} END{for(i in a)print i, a[i]}'
join -a 1
左外部結合を作成するには、このアプローチで何を修正する必要がありますか?
答え1
Awk
解決策:
awk 'NR==FNR{ a[$1]=$2; next }$1 in a{ $2=a[$1]; print }' file2.txt file1.txt
出力:
key1 22
key1 22
key1 22
key1 22
key2 23
key2 23
key3 24
key3 24
key3 24
または単にjoin
注文する:
join -o1.1,2.2 file1.txt file2.txt