파일에서 일반적이지 않은 텍스트를 추출하려고하는데 이것을 시도했습니다.
awk 'FNR==NR {a[$0]++; next} !a[$0]' 1.txt 2.txt
http://PQR.com
http://example.com
다음은 입력 파일입니다.
File: 1.txt
http://google.com
http://GOOGLE.com
http://example1.com
http://seperate.com
http://pqr.com
File: 2.txt
http://PQR.com
http://example.com
http://google.com
당신이 볼 수 있듯이, http://pqr.com
파일에서 사용할 수 1.txt
와 http://PQR.com
의 2.txt
. http://PQR.com
두 파일에서 공통적 인 결과 표시 . 따라서 어떻게하면 흔하지 않은 텍스트 만 표시 할 수 있습니까 (텍스트의 경우에 의존하지 않음)?
이미을 awk
사용 tolower
하고 있으므로을 사용 하여 줄을 소문자로 지정하십시오.
awk 'FNR==NR {a[tolower($0)]++; next} !a[tolower($0)]' foo bar
그러나 bar
이것은에없는 행만 인쇄합니다 foo
.
비교 :
$ sort -f bar foo | uniq -iu
http://example.com
http://example1.com
http://seperate.com
를 사용하면 awk
한 번만 본 모든 행을 인쇄해야합니다.
$ awk '{a[tolower($0)]++} END {for (i in a) if (a[i] == 1) print i}' foo bar
http://seperate.com
http://example.com
http://example1.com
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다