uniq
uniq -u
둘 다에 대한 설명은 "고유한 줄만"이지만 둘과는 다른 작업을 수행하는 것 같습니다 .
여기서 차이점은 무엇이며 무엇을 합니까?
답변1
테스트하기 쉬워야 합니다.
$ cat file
1
2
3
3
4
4
$ uniq file
1
2
3
4
$ uniq -u file
1
2
즉, uniq
옵션을 사용하지 않으면 연속 중복 행의 인스턴스 하나만 제외하고 모두 제거됩니다. GNU uniq
매뉴얼에는 다음과 같이 명시되어 있습니다.
옵션이 없으면 일치하는 줄이 첫 번째 항목으로 병합됩니다.
하지만POSIX 라고
[...] 출력에 각 입력 라인의 복사본을 씁니다. 중복된 인접 입력 라인의 두 번째 및 후속 복사본을 작성하면 안 됩니다.
이 -u
옵션을 사용하면 제거됩니다.모두행의 인스턴스는 계속 반복되며, 반복되지 않는 행만 남습니다. GNU uniq
매뉴얼에는 다음과 같은 내용이 있습니다.
고유한 줄만 인쇄
POSIX 라고
입력에 중복된 줄을 쓰는 것을 억제합니다.
답변2
~에서독특한(1):
NAME uniq - report or omit repeated lines DESCRIPTION ... With no options, matching lines are merged to the first occurrence. ... -u, --unique only print unique lines
시도해 보면 다음과 같습니다.
$ cat file
cat
dog
dog
bird
$ uniq file
cat
dog
bird
$ uniq -u file
cat
bird
uniq
중복 행의 첫 번째 인스턴스가 인쇄되는 것을 볼 수 있습니다 . uniq -u
중복된 줄을 인쇄하지 마십시오.
답변3
허용된 답변에 대한 원본 포스터의 의견을 고려할 때 다른 예가 명령의 차이점과 요점을 설명하는 데 도움이 될 수 있다고 생각합니다.
어떤 이유로 인해 줄 사이에 빈 줄이 반복되고 시작과 끝에 빈 줄이 있는 텍스트 섹션이 있다고 가정해 보겠습니다.
$ cat declaration_quote.txt
We hold these truths to be self-evident, that all men are created equal, that
they are endowed by their Creator with certain unalienable Rights, that among
these are Life, Liberty and the pursuit of Happiness.
빈 줄의 간격이 충분하다고 확신하는 경우 다음을 uniq
사용할 수 있습니다.
- 반복되지 않는 위와 아래의 모든 줄(여기에는 시작과 끝 부분에 텍스트와 단일 빈 줄이 있는 줄이 있습니다)
- 인접한 반복 줄의 각 세트에서 한 줄(여기서는 첫 번째 줄과 마지막 줄을 제외한 빈 줄)입니다.
그렇지 않다"모든 일은 단 한 번만 일어난다", 대신에"연속 그룹당 1회각 빈 행 집합에서 별도의 빈 행을 받게 되기 때문입니다. 이런 일이 두 번 이상 일어났습니다. 또한 바로 위나 아래에 빈 줄이 없기 때문에 선행 및 후행 빈 줄이 유지됩니다.
$ uniq declaration_quote.txt
We hold these truths to be self-evident, that all men are created equal, that
they are endowed by their Creator with certain unalienable Rights, that among
these are Life, Liberty and the pursuit of Happiness.
uniq -u
이러한 이중 간격이 전혀 필요하지 않다고 결정한 경우 즉시 반복되지 않는 위 또는 아래 줄의 모든 줄만 가져오는 데 를 사용할 수 있습니다 . 하지만 아직은 아니야 "한 번만 나타나는 것"텍스트에 다른 빈 줄이 많더라도 단일 빈 줄(시작과 끝)을 제거하지 않기 때문입니다."즉시 반복되지 않는 일만 수행".
$ uniq -u declaration_quote.txt
We hold these truths to be self-evident, that all men are created equal, that
they are endowed by their Creator with certain unalienable Rights, that among
these are Life, Liberty and the pursuit of Happiness.