sort ?
파일내용 또는 목록을 행 단위(Row) 기준으로 정렬하여 출력하는 명령어.
[ 자주사용되는 옵션 ]
-k Num : 정해진 컬럼위치(Num) 기준으로 정렬 (-t 옵션 함께사용)
-t '구분자' : 필드 구분자(Seperator) 지정, 기본 값은 공백문자
-f : 무시케이스 (대,소문자 구분X)
-g : 일반적인 숫자기준 정렬
-n : 라인의 각 필드를 비교하는 대상을 (숫자)로 한정
-r : 역순정렬
-u : 내용이 같은 중복 행 제거
[ 입력 및 실습 ]
1. /etc/passwd 파일 기본출력
$ cat /etc/passwd
2. /etc/passwd 파일 출력후 정렬(1)
$ cat /etc/passwd | sort |
--> cat으로 출력된 passwd파일 내용을 파이프 '|'로 입력받아 sort(정렬) 처리..
--> 각 행의 맨 앞 필드(Char) 기준으로 문자오름차순(a, b, c ...) 정렬
2. /etc/passwd 파일 출력후 정렬(2)
$ cat /etc/passwd | sort -t: -k 3
(Option -t'구분자' --> 구분자를 기준으로 필드 값을 나눈다, -k '기준' --> 위치'기준'으로 정렬)
--> passwd파일의 각 행의 구분자(":") 를 기준으로 3번째 위치. '0', '1000', '11', '1', '12', '14', '192', '2', '3'..
기준으로 오름차순 정렬 ( 숫자가 아닌 문자로 인식 )
3. /etc/passwd 파일 출력후 정렬(3)
$ cat /etc/passwd | sort -t: -k 3 -n
(Option -n : 지정된 구분 값을 숫자로 인식 )
--> passwd파일의 각 행의 구분자(":") 를 기준으로 3번째 위치값을 기준으로 숫자로 인식하여
오름차순 정렬 ( 0, 1, 2, 3... )
4. /etc/passwd 파일 출력후 정렬, 디버그 (3)
$ cat /etc/passwd | sort -t: -k 3 -n --debug
--> 디버그 모드로 사용하여 정렬기준을 정확하게 확인.
5. /etc/passwd 파일 출력후 정렬 (4)
$ cat /etc/passwd | sort -t: -k 5,5 --debug
( -k '정렬 시작위치 컬럼', '정렬 종료위치 컬럼' ) : 5번째 컬럼 위치 '문자' 기준 오름차순 정렬
6. /etc/passwd 파일 출력후 정렬 (5)
$ cat /etc/passwd | sort -t: -k 5,5 -k 1,1 --debug
--> 5번째 컬럼 위치 '문자' 기준 오름차순 정렬이후, 1번째 컬럼위치 '문자' 기준 오름차순 정렬
7. 파일목록 정렬 (파일 사이즈 기준 오름차순)
$ ls -al | sort -k 5 -n
--> 현재 경로의 파일목록을 5째 위치(파일용량) '숫자' 기준으로 오름차순 정렬
(스페이스로 필드 값이 구분되어 있으므로 -t '구분자' 지정 생략.. )
exit.
'Linux Command' 카테고리의 다른 글
[Linux] 프로세스 정보확인 (ps) (0) | 2021.10.09 |
---|---|
[Linux] 파일정보 확인 및 파일권한,소유권 변경 (chmod, chown) (0) | 2021.09.23 |
[Linux] 파일 구성정보 확인(wc) (0) | 2021.09.23 |
[Linux] 파일내용 줄 번호 표시(nl) (0) | 2021.09.23 |
[Linux] 'bashrc' 사용 한 Alias설정. (0) | 2021.09.16 |