파일 A:
Castro 2
Manuel 5
Daniela 8
...
파일 B:
Tom//UK No
Mark//UK No
Castro//Chile Yes
...
Manuel//Spain No
산출:
Castro 2 Yes
Manuel 5 No
...
파일 A의 각 이름을 열거하고 파일 B에서 검색한 다음 두 번째 필드를 파일 A의 필드 3에 추가합니다.
내가 노력하는 것 :
cat File_A.txt | awk -F '\t' '{ print $1 }; $3=`grep -i $2 File_B.txt | head -1 | cut -f2`'
답변1
Awk
해결책:
awk 'NR == FNR{ names[$1] = $2; next }
{ name = substr($1, 1, index($1, "/") - 1) }
name in names { print name, names[name], $NF }' file1 file2
산출:
Castro 2 Yes
Manuel 5 No
답변2
또 다른 awk
해결책:
awk -F'//| ' 'NR==FNR{a[$1]=$3;next}NR>FNR{print $0,a[$1]}' fileB fileA
fileB에 fileA에 존재하는 이름이 없으면 이 줄이 인쇄됩니다.