두 번째 파일의 키워드와 일치하지 않는 전체 줄을 나열합니다.

두 번째 파일의 키워드와 일치하지 않는 전체 줄을 나열합니다.

다음 형식의 HTML 링크 목록이 포함된 간단한 텍스트 파일이 있습니다.

<a href="https://xxxxxxxx" target="_blank" rel="">This_is_a_test001</a><br />

키워드 목록이 포함된 두 번째 텍스트 파일입니다. 두 번째 파일의 키워드와 일치하지 않는 첫 번째 파일에서 완전한 줄을 추출하고 싶습니다. 어떤 도구나 스크립팅 언어를 사용해도 좋습니다.

답변1

grep -vFf keywords.txt file.txt

file.txt행이 포함되지 않은 행이 나열됩니다 keywords.txt.

awk -F '[<>]' '!x{k[$0]; next}; ! ($3 in k)' keywords.txt x=1 file.txt

또는 file.txt의 두 번째와 세 번째 발생 사이에서 찾을 수 없는 부분이 있는 행을 나열합니다 .<>keywords.txt

답변2

다음 명령을 사용하여 요구 사항에 따라 결과를 얻을 수 있습니다.

awk 'NR==FNR{a[$1];next}!($1 in a){print $0}' Keyword_file first_file


Keyword_file===> Consists of keyword in first column

위 명령이 키워드_파일에 있는 키워드와 일치하면 first_file에서 줄이 삭제되고 나머지 줄이 표시됩니다.

아래는 동일한 예입니다.

혼란스러운 점이 있으면 말씀해 주세요.

Example

keyword_file
praveen
ajay
san


first_file

praveen is good
san is bad
abhi is great
kiran is awesome

command: awk 'NR==FNR{a[$1];next}!($1 in a){print $0}' Keyword_file first_file

output

abhi is great
kiran is awesome

관련 정보