이메일 주소 파일(파일 1)과 해당 이메일 주소 중 일부를 포함하는 다른 데이터 라인 파일(파일 2)이 있습니다.
파일을 비교하고 파일 1의 이메일과 일치하는 파일 2의 모든 줄을 삭제하고 싶습니다.
나는 루프를 수행하고 sed -i
각 줄을 새 파일로 사용하거나 루프하고 grep한 다음 파일을 COMM과 비교할 수 있다는 것을 알고 있습니다.
하지만 file1의 모든 줄을 file2로 grep하고 file1의 이메일이 포함되지 않은 file2의 줄만 유지할 수 있는 비교 방법이 있는지 알고 싶습니다.
파일 1:
[email protected]
[email protected]
[email protected]
파일 2:
23456|tom|jones|test@goodemailcom|10
12345|pete|best|[email protected]|10
87569|remove3|me3|[email protected]|10
23098|mike|jones|mike@goodemailcom|10
10985|al|best|[email protected]|10
09865|removve|me|[email protected]|10
13579|remove2|me2|[email protected]|10
누구나 가지고 있는 지식을 높이 평가합니다.
답변1
다음을 위해 사용할 수 있습니다 fgrep
:
fgrep -v -f file1 file2 > unique_addresses
두 파일의 각 줄에 이메일 주소가 있으면 이 작업이 훨씬 쉬울 것입니다.
전통적으로 fgrep
별도의 프로그램으로 존재하지만 GNU 유틸리티에서는 grep -F
동일한 작업을 수행합니다.