다음과 같은 파일이 있습니다.
입력하다:
34
34
34
43
54
54
10001
10001
10001
10001
100005
100005
500000
따라서 각 숫자가 한 번만 나타나도록 해야 합니다.
나가:
34
43
54
10001
100005
500000
실제 파일을 고려한 제안 사항이 상당히 크고 반복이 너무 많습니까?
답변1
당신을 위한:
$ uniq inputFile > outputFile
uniq
단 , 연속된 중복 행만 삭제되므로 주의하세요 . 따라서 연속적으로 발생하지 않는 줄이라도 모든 중복 줄을 제거하려면 먼저 sort
파일을 입력하고 다음을 사용할 수 있습니다 uniq
.
$ sort -g inputFile | uniq > outputFile
-g
옵션은 공통 값을 기준으로 비교됩니다.
아니면 그냥 사용sort -nu inputFile > outputFile
답변2
연속된 행이 아닌 중복 항목을 제거하려면 다음과 같이 정렬해야 합니다.
cat FILE1 | sort -nu > FILE2
sort -n
숫자 정렬 및 연속된 중복 행 제거를 나타냅니다 ( 정렬된 파일/데이터에 대해 -u
독립 실행형 명령이 수행하는 것과 동일 ).uniq