> 텍스트 처리 및 검색 > uniq

uniq 명령어 가이드: 중복된 라인 제거 및 확인

`uniq` 명령어는 텍스트 파일이나 파이프를 통해 전달된 데이터에서 연속적으로 중복되는 라인들을 제거하거나, 중복된 라인의 개수를 세는 데 사용됩니다. `sort` 명령어와 함께 사용될 때 그 진가가 발휘되며, 데이터 정리 및 분석 작업에 필수적인 도구입니다.

uniq 명령어 개요

`uniq`는 'unique(고유한)'의 약자로, 파일 내에서 중복되는 라인을 찾아내고 처리하는 기능을 수행합니다. 여기서 중요한 점은 `uniq`가 **연속적으로 중복되는 라인**만을 처리한다는 것입니다. 따라서 파일 전체에서 중복을 제거하려면 먼저 `sort` 명령어를 사용하여 데이터를 정렬해야 합니다.

uniq의 작동 방식

uniq 명령어는 입력 라인을 한 줄씩 읽어와 바로 이전 라인과 비교합니다. 두 라인이 같으면 중복으로 간주하고, 같지 않으면 새로운 고유한 라인으로 간주합니다. 이 과정 때문에 파일 전체의 중복을 제거하기 위해서는 반드시 `sort` 명령어로 파일을 정렬하는 과정이 선행되어야 합니다.

주요 옵션

`uniq` 명령어의 다양한 옵션을 활용하여 중복 제거, 카운트, 특정 라인 출력 등 세밀한 작업을 수행할 수 있습니다.

1. 기본 기능

2. 비교 방식 제어

생성된 명령어:

명령어를 조합해 보세요.

설명:

`uniq` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

자주 사용되는 예시

uniq와 `sort`를 함께 사용하여 데이터를 효과적으로 처리하는 방법을 배워보세요.

파일 전체에서 중복 라인 제거

sort data.txt | uniq

`sort`로 `data.txt` 파일을 정렬한 뒤, `uniq`로 파일 전체의 중복 라인을 제거합니다. 이 조합은 가장 일반적인 사용법입니다.

중복된 라인과 횟수 출력

sort data.txt | uniq -c

`data.txt` 파일의 중복 라인을 제거하고, 각 라인이 몇 번 나타났는지 횟수와 함께 출력합니다.

파일 전체에서 중복 라인만 출력

sort data.txt | uniq -d

`data.txt` 파일에서 두 번 이상 나타난 라인들만 출력합니다.

파일 전체에서 한 번만 나타난 고유한 라인만 출력

sort data.txt | uniq -u

`data.txt` 파일에서 중복되지 않고 한 번만 나타난 라인들만 출력합니다.

특정 필드 무시하고 중복 제거

sort log.txt | uniq -f 1

로그 파일에서 시간 정보(첫 번째 필드)를 무시하고 나머지 내용만으로 중복을 제거합니다.


관련 명령어

기능적으로 유사하거나 함께 자주쓰이는 명령어들입니다.


동일 카테고리 명령어