문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. [[분류: 유닉스 명령어]] ==개요== <code>'''uniq'''</code>(유니크)는 텍스트 파일 내에 중복된 내용의 행이 연속으로 있으면 중복 없이 하나의 행으로 만들어 주는 [[유닉스]] 유틸리티이다. <code>'''uniq'''</code>는 일종의 [[필터 프로그램]](filter program)으로 보통 <code>[[sort]]</code>뒤에 덧붙여 사용된다. 또한 <code>-d</code>옵션을 적용하여 중복되는 행만을 볼 수 있거나, <code>-c</code>옵션을 적용하여 중복행의 중복횟수를 출력할 수 있다. == 예시 == 한 예로 어떤 파일에 중복되는 내용의 행을 정렬하고 중복횟수를 세어 오름차순 정리한다면, $ sort file | '''uniq''' -c | sort -n 위와 같이 적용하면 된다. [[셸 스크립트]]에서 [[파이프라인 (소프트웨어)|파이프라인]]을 삽입하여 <code>'''uniq'''</code>를 <code>[[sort]]</code>와 함께 실행하는 것이다. 여기서 주의해야 할 점은 <code>'''uniq'''</code>는 파일 내용이 미리 정렬되어 있는 상태에서 실행할 수 있다. $ [[cat (유닉스)|cat]] fruits.txt orange apple apple orange orange apple $ '''uniq''' -c fruits.txt 1 orange 2 apple 2 orange 1 apple 정렬이 이루어지지 않은 상태에서 <code>'''uniq'''</code>를 적용하였기에 위와 같은 결과를 얻을 수 있다. $ sort -u fruits.txt apple orange 이것은 파일내용을 정렬시켜 중복되는 것을 하나로 표현하는 것이다. 결론적으로 <code>'''uniq'''</code>는 파일에 전체적으로 분산된 중복을 한번에 잡아내지 못한다. 따라서 정렬하여 순차적으로 만든 뒤에 적용한다. == 옵션 == {|align="right" | $ '''uniq''' -u fruits.txt orange apple |} ;-u: 원래 파일에서 연속으로 중복되지 않는 행만을 출력한다. ;-d: 원래 파일에서 연속으로 중복되는 행들을 출력한다. 즉, -u 옵션과는 반대로 연속으로 중복된 내용을 지닌 줄만을 한 번씩 보여준다. ;-c: 중복발생횟수를 연속 중복 행과 함께 보여준다. -c 옵션이 적용되면 앞에 -u나 -d 옵션이 적용되었더라도 그들은 무시된다. ;-i: 행들을 비교할때 대소문자 구별을 하지 않는다. ;-s수: 한행에서 지정된 수만큼의 문자를 비교대상에서 제외한다. ;-f수: 맨 앞에서부터 지정된 수 만큼의 필드를 비교대상에서 제외한다. ;-w수: 비교대상 문자 수를 지정한다. ;--help: 각종 옵션에 대한 설명과 도움말을 볼 수 있다. ;--version: uniq의 버전 번호를 보여준다. Uniq 문서로 돌아갑니다.