컴퓨터공부/Linux & Unix

sort 명령어

achivenKakao 2007. 3. 8. 02:07
sort : 파일내의 단어 순서를 행 단위로 정렬한다.

     sort [ -cmuodfiMnrtb ] 파일이름(들)

옵션
     -c : 파일이 정렬되었는지 검사한다. 그렇다면 아무런 출력도 하지 않는다.
     -m : 특정한 파일을 병합한다. 파일은 이미 정렬되었다고 가정한다.
     -u : 고유한 행만이 출력된다.
     -o 파일명: 출력 파일 이름을 지정한다. 이름은 입력 파일 이름과 같을 수 있다.
     -d : 사전(dictionary)과 같은 순서대로 정렬한다. 단어 정렬 순서에는 문자, 숫자, 공백 문자만이 사용된다.
     -f : 대문자와 소문자를 구별하지 않는다.
     -i : 정렬에 사용되는 문자 중 프린트될 수 없는 문자는 사용하지 않는다.
     -M : 단어를 정렬할 때 달을 의미하는 문자를 취급한다. FEB는 JAN보다 뒤에 정렬된다.
     -n : 숫자를 같은 문자가 아닌 정말로 숫자로 취급해서 수의 크기대로 정렬한다.
     -r : 역순으로 정렬한다.
     -t 문자 : 단어 등 필드를 구분하는 문자를 지정한다. 탭(tab)이나 공백 문자 이외의 문자를 구분 문자로 취급하도록 한다.
     -b : 단어의 뒤에 오는 공백 문자는 정렬 키(key) 값으로 무시하도록 한다.

설명
sort명령의 정렬 방법에는 다음과 같은 기준이 있다.
일반적인 알파벳 순서로 정렬하되 소문자보다 대문자가 우선한다.
대소문자 보다 숫자가 우선한다. 숫자는 처음에 오는 숫자의 순서에 의한다. 즉 숫자들도 문자처럼 취급될 뿐이지, 실제 숫자의 대소는 생각하지 않는다.

사용예
     $ cat sample
     speaker
     audio system
     Hi-Fi video
     1997
     4th object?
     good!
     $ sort sample ,, 문자를 정렬
     $ cat sample ,, 분류된 내용 확인
     1997
     4th object?
     Hi-Fi video
     audio system
     good!
     speaker