여러 열을 기준으로 정렬하는 방법은 무엇입니까? [복사]

여러 열을 기준으로 정렬하는 방법은 무엇입니까? [복사]

탭으로 구분된 파일이 있는데 9열, 14열, 16열을 기준으로 정렬하고 싶습니다. 즉, 9열과 일치하는 모든 행은 14열을 기준으로 정렬되어야 하고, 그 중에서 9열과 일치하는 행도 14열을 기준으로 정렬되어야 한다는 것입니다. 열 14를 열 16으로 정렬해야 한다는 데 동의했습니다. (모든 열은 오름차순으로 정렬해야 하지만 처음 두 열은 알파벳순, 나머지 열은 숫자순으로 정렬해야 합니다.)

gnu다양한 형태의 ( ) 를 시도했지만 sort원하는 정렬 순서를 얻지 못했습니다. 매뉴얼 페이지는 도움이 되지 않습니다. 위의 정렬을 달성하기 위한 올바른 주문을 말해 줄 수 있는 사람이 있습니까?

답변1

sort -t '\t' -k9,9 -k14,14 -k16,16n

(정렬 키가 시작되는 위치를 지정해야 한다는 점을 기억하세요.그리고 그들의 종말-k9, 그렇지 않으면 ( 대신 사용하면 -k9,9줄 끝에서 끝나기 때문입니다).

관련 정보