![파일에서 중복 항목을 제거하는 방법은 무엇입니까?](https://linux55.com/image/30897/%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C%20%EC%A4%91%EB%B3%B5%20%ED%95%AD%EB%AA%A9%EC%9D%84%20%EC%A0%9C%EA%B1%B0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
내 파일에 쉼표로 구분된 도메인 이름 목록이 있습니다. 안타깝게도 일부 도메인 이름에 중복된 항목이 있습니다.
파일에서 중복된 항목을 찾아서 제거하는 방법이 있습니까?
샘플 출력은 다음과 같습니다:-
culturaurbanashop.com,remaxcorn.info,enjoygoing.com,full-kit-wankers.co.uk,paracaballo.com,radiopozarica.com,sprinklermaps.com,unlock-any-phone.com,voipbillingplus.com,yedincicadde.net,klasseaparte.com,allfortheweb.com,indulgesolutions.com,fastextcafe.info,titi.sickworldhosting.com,kebeico.com,facemowi.it,mellat.info,sal-gov.info,hindustan4848.com,nawaopls.co.za,familie-ries.de
답변1
노력하다:
tr ',' '\n' < infile | sort -u | paste -sd, -
답변2
쉼표로 구분된 단어 목록(단어는 공백이 아닌 시퀀스임)에서 중복 항목을 제거해야 한다는 의미인 경우 다음과 같을 수 있습니다.
$ echo 2,1,1,2,c,1 a,a,a,b,c | perl -M'List::MoreUtils uniq' -lpe '
s/[\S,]+,[\S,]+/join ",", uniq(split",",$&)/ge'
2,1,c a,b,c