텍스트 파일 2개. 두 개의 텍스트 파일에서 uniq 값을 찾고 세 번째 파일에서 파일 이름 및 uniq 값과 함께 출력을 얻어야 합니다. 예를 들어 a.txt
1
4
3
b.txt
2
1
7
산출
File.out
b.txt 2
a.txt 3
a.txt 4
b.txt 7
나는 다음 명령을 시도했다
cat a.txt b.txt | sort | uniq -u >>file.out
하지만 파일 이름을 가져오지 않고 값만 인쇄합니다.
답변1
Awk를 사용하여 파일 이름 앞에 추가한 다음 두 번째 필드를 + uniq로 정렬할 수 있습니다.
$ awk '{print FILENAME,$0}' a.txt b.txt | sort -k2 | uniq -uf1
b.txt 2
a.txt 3
a.txt 4
b.txt 7