awk: 두 파일 사이의 공통 데이터 찾기

awk: 두 파일 사이의 공통 데이터 찾기

파일 1(마스터 데이터):

12345|abc  
11223|xyz  
23234|pqr

파일 2(파일 1의 하위 집합):

12345_ASDD|PASD|AWOP  
11223_PLDD|EVAAA ASDAS|ASDD  
23234_MJKJLO|OKEI JSN|OPIE  

산출:

12345_ASDD|PASD|AWOP|abc  
11223_PLDD|EVAAA ASDAS|ASDD|xyz  
23234_MJKJLO|OKEI JSN|OPIE|pqr

설명하다:
첫 번째 열(밑줄 앞)파일 2File1의 첫 번째 열과 일치해야 하며 File1의 해당 두 번째 열이 File2에 추가되어야 합니다.

답변1

아마도 가장 쉬운 방법은 두 번째 파일 이전에 FS를 변경하는 것입니다. 예를 들어 익숙한 필드 기반 조회를 수행할 수 있습니다.

awk 'BEGIN{OFS=FS="|"} NR==FNR {a[$1]=$2; next} {print $0,a[$1]}' File1 FS="_" File2

관련 정보