좋아 트위스트와 함께 중복 된 줄을 제거하지만 조금 더 복잡한보다입니다 ..내가 중복 행을 제거 할 수 있도록 gnuwin32
을 나는라는 파일 USERS.TXT이 파일의 예는 다음과 같습니다
users:[email protected]
users1:[email protected]
때문에 내 시스템 사람들의 버그 이제
다른 사람과 같은 이메일을 등록 할 수 있었다, 그래서 나는 선이 같은 이메일이있는 경우, 두 번 이상 문제의 예를 제거하려면 :
user:display:[email protected]
user2:[email protected]
user3:[email protected]
user4:[email protected]
공지 사항 호 w user, user2, user3, user4 모두 같은 이메일을 가지고 있습니다. 잘 user2, user3, user4를 제거하고 싶지만 사용자를 유지하고 싶습니다. 또는 그 반대의 경우도 마찬가지입니다 (요청에 의해 처음 선택됩니다). ,
awk '!a["user:display:[email protected]"]++' filename
++
수단 ..
그래서
[email protected] is in 20 lines remove 19
[email protected] is in 555 lines remove 554
등등 .. 제
이메일을 'awk' 배열의 색인으로 사용하십시오. 각 줄을 처리 할 때 전자 메일이 배열에 없으면 줄을 인쇄하여 배열에 추가하십시오. – Barmar
http://stackoverflow.com/questions/2604088/awk-remove-line-if-field-is-duplicate – Barmar
"요청에 의해 처음으로 픽업을 받는다"는 의미를 설명 할 수 있습니까? 어떤 라인이 남아 있는지 선택하는 기준은 무엇입니까? 알파벳순의 첫 번째 사용자 이름? 파일에 처음으로 나타 납니까? – Fred