나는 가지고있다파일 1(견본):
60108903374
60172485121
60108919381
60174213128
60108919951
60108919970
601112020106
601112020107
601112020108
601112020113
601112020114
60175472940
그리고파일 2:
60179970001,A
60172681920,A
60174202041,A
60172514180,A
60174314679,A
60174325306,A
60175472940,A
60174213128,A
60175328984,A
60175349857,A
60172796759,A
60172798922,A
60179195129,A
60172485121,B
60173483126,A
60172683175,A
60174521828,A
60142536314,B
60175347909,B
60175183031,B
file1
첫 번째 열을 기준으로 합계 file2
를 출력 일치와 결합하고 의 두 번째 열을 표시하고 싶습니다 file2
.
원하는 출력:
60172485121,B
60174213128,A
file1
~80,000개의 행과 500,000개의 행이 있습니다 file2
.
다음을 사용해 보세요:
join -1 1 -2 1 -o 1.1,2.2 file1 file2
답변1
join -t, <(sort file1) <(sort -t, file2)
위 작업이 완료되었습니다.
답변2
awk -F, 'NF==1 {a[$1]++};
NF>=2 && a[$1]' file1 file2
- 필드가 하나만 있는 경우 저장합니다.
- 더 많은 정보가 있고 첫 번째 필드가 저장되어 있으면 인쇄하세요.
얻은 출력:
60175472940,A
60174213128,A
60172485121,B