본문으로 이동

Sort (유닉스)

위키백과, 우리 모두의 백과사전.
Suenky613 (토론 | 기여)님의 2008년 11월 17일 (월) 11:28 판

sort는 표준 유닉스 명령어 프로그램으로서 입력어들이나 인수 목록들에 기입된 모든 파일들의 연속어들을 정렬된 순서로 출력한다. 정렬하기는 입력어 각각으로부터 도출된 하나 혹은 그 이상의 정렬 키들에 바탕을 두어 시행된다. 디폴트에 의해서 전체 입력어는 정렬 키로서 처리된다. 빈 공백은 디폴트 필드 구분자로서 받아드려진다. -r 플래그는 정렬 명령을 반대로 시행한다.

현재 디렉토리를 파일 크기에 따라 정렬하기

$ls -s | sort -n
  96 Nov1.txt
 128 _arch_backup.lst
 128 _arch_backup.lst.tmp
1708 NMON

알파벳 순서로 파일 정렬하기

$ cat phonebook
Smith, Brett     555-4321
Doe, John        555-1234
Doe, Jane        555-3214
Avery, Cory      555-4321
Fogarty, Suzie   555-2314
  
$ sort phonebook
Avery, Cory      555-4321
Doe, Jane        555-3214
Doe, John        555-1234
Fogarty, Suzie   555-2314
Smith, Brett     555-4321

숫자로 정렬하기

-n 옵션은 프로그램이 숫자값에 따라 정렬되도록 만든다:

$ du /bin/* | sort -n
4       /bin/domainname
24      /bin/ls
102     /bin/sh
304     /bin/csh

sort의 과거 버전에서는, +1 옵션은 프로그램 데이타의 두번째 열을 ( +2은 세번째 열을 정렬하도록, 그 밖에는 같은 식으로) 정렬되도록 한다. 이것이 더 이상 지속되지 않는 경우, -k 옵션을 대신 사용하여 같은 일을 한다. (주의 : "-k2"는 두번째 열에 대한 것이다):

$ cat zipcode
Adam  12345
Bob   34567
Joe   56789
Sam   45678
Wendy 23456
  
$ sort -nk 2 zipcode
Adam  12345
Wendy 23456
Bob   34567
Sam   45678
Joe   56789

파이프로 한정된 파일 정렬하기

$ sort -t'|' -k2 zipcode
Adam|12345
Wendy|23456
Bob|34567
Sam|45678
Joe|56789

반대로 정렬하기

-r 옵션은 단순히 정렬하기 순서를 반대로 뒤집는다:

$ sort -nrk 2 zipcode
Joe   56789
Sam   45678
Bob   34567
Wendy 23456
Adam  12345

같이 보기

외부 링크