정렬 명령이 예상대로 작동하지 않습니다.

정렬 명령이 예상대로 작동하지 않습니다.

다음과 같은 데이터세트가 있습니다.

[email protected],2009-11-27

[email protected],2009-11-27

[email protected],2009-11-27

컬럼 2의 동일한 항목을 모두 삭제하는 명령을 실행할 때

sort -t ',' -k2 stars.txt -u

column1의 항목을 삭제하는 중입니다.

2열의 중복된 항목을 제거하려면 -k3플래그를 입력해야 합니다.

sort -t ',' -k3 stars.txt -u

왜 이런 일이 발생하는지 설명해 줄 수 있는 사람이 있나요? 열을 삭제하려면 파일의 열에 +1을 입력해야 하는 이유는 무엇입니까?

답변1

방금 이 테스트를 해보니

$ cat tfile
[email protected],2009-11-26
[email protected],2009-11-27
[email protected],2009-11-28
[email protected],2009-11-29
[email protected],2009-11-27

k2 정렬이 작동합니다!

$ sort -t ',' -k2 tfile 
[email protected],2009-11-26
[email protected],2009-11-27
[email protected],2009-11-27
[email protected],2009-11-28
[email protected],2009-11-29

독특한 조각으로 k2를 분류해보세요!

$ sort -t ',' -k2 tfile -u
[email protected],2009-11-26
[email protected],2009-11-27
[email protected],2009-11-28
[email protected],2009-11-29

일종의 불량 키 - 첫 번째 줄만 인쇄합니다.

$ sort -t ',' -k3 tfile -u
[email protected],2009-11-26
$ 

이러한 결과를 얻지 못하면 해당 라인에 다른 것이 있어야 합니다.

관련 정보