points.txt
다음 데이터 테이블을 포함하는 파일이 있습니다 .
Jim:4
Tim:8
Lin:6
Tom:1
Esko:2
Jaska:5
Erkki:7
이제 다음 목록을 숫자 순서(가장 높은 것부터)로 만들 수 있습니까? 또는 가장 높은 점수를 받은 세 이름을 어떻게 나열할 수 있습니까? 다음을 시도했지만 작동하지 않는 것 같습니다.
sort -n -k 1,1 points.txt
sort -n points.txt
sort -n ^: points.txt
답변1
TOP 3를 찾고 계시다면
sort -k2,2rn -t: points.txt | head -n 3 | cut -f1 -d:
-k
정렬 필드를 지정하며 다음 부분은 다음과 같습니다.
2,2
- 필드로 시작하고 끝나는 정렬 키2
n
- 숫자 정렬
r
- 역순 정렬
-t
이 경우 필드 구분 기호를 지정하는 데 사용됩니다.: