내 gawk 스크립트는 모든 잠재적 결과와 일치하지 않으며 그 중 하나만 일치합니다.
예 -
스크립트:
gawk -F: "FNR==NR{a[$2]=$1;next} $1 in a{print a[$1] FS $2}" username.email.txt email.phone.txt > username.phone.txt
email.phone.txt - 다음을 포함합니다:
[email protected]:phoneexample
사용자 이름.email.txt - 포함:
user1:[email protected]
user131:[email protected]
예상 출력 - 다음과 같아야 합니다.
user1:phoneexample
user131:phoneexample
대신, "를 포함하는 줄 중 하나만 일치합니다.[이메일 보호됨]"
출력 -
user131:[email protected]
답변1
파일과 필드를 반대로 하면 더 나을 수도 있습니다.
awk -F: 'FNR==NR{a[$1]=$2;next} $2 in a{print $1 FS a[$2]}' email.phone.txt username.email.txt
user1:phoneexample
user131:phoneexample