여러 개의 파일이 있습니다(파일 1.txt그리고파일 2.txt) 그리고 저는 unix "comm" 명령을 사용하여 이 파일들을 비교하여 file1.txt에서 고유한 줄을 찾습니다.
다음은 file1.txt의 줄입니다.
OD1
EN2
OD3
OD4
OD5
EN6
EN7
EN8
EN9
OD10
OD11
OD12
다음은 file2.txt의 줄입니다.
EN1
EN2
EN3
OD4
OD5
EN6
EN7
EN8
EN9
OD10
내가 사용하는 명령은 다음과 같습니다
comm -23 file1.txt file2.txt
실제
결과 :
OD1
OD10
OD11
OD12
OD3
예상하다
나는 그것을 기대합니다:
OD1
OD11
OD12
OD3
예상 결과를 얻는 방법을 알려주시겠습니까?
답변1
파일은 사전순으로 정렬되어야 합니다. 그렇지 않으면 comm
작동하지 않습니다.
순서대로 정렬한 후 다시 시도하세요.
또는 다음을 사용하십시오:
comm -23 <(sort file1.txt) <(sort file2.txt)
답변2
사용
sdiff -s file1.txt file2.txt | awk '{print $1}' | sort -u
출력은 다음과 같습니다
OD1
OD11
OD12
OD3