728x90
Sort 함수
sort는 텍스트로 된 파일의 행 단위 정렬을 할 때 사용하는 명령어이다. 이 명령어를 이용하면, 프로그램, 쉘 프로그램 등의 입력 값으로 사용되는 데이터를 직접 정렬 또는 편집할 때 편리사게 사용할 수 있다.
1. Syntax of sort
sort <option> <file_name>
※ NOTE 1: 기본값으로써, sort 함수는 주어진 텍스트 파일을 오름 차순으로 정렬한다.
※ NOTE 2: sort 명령어는 숫자를 문자로 인식하고 표준 문자 정렬을 한다.
- 따라서, 숫자로 정렬하기 위해선 -n 옵션을 사용해야 한다.
※ 옵션
옵션 | 설명 |
-r | 내림 차순 정렬 |
-k <n> | 텍스트 파일을 <n> 번째 필드를 기준으로 정렬 |
-u | 중복된 내용을 하나로 취급하여 유일 정렬 |
-t <seperator> | 필드 구분자로 <seperator>를 사용한다 |
-n --numeric-sort |
숫자 순서로 정렬 |
-M --month-sort |
- 세글자로 된 월(Month)이름을 써서 월 순서로 정렬 (Jan, Feb,...) |
-b | 정렬를 하기 위해 각각의 라인의 sort key를 찾을 때, space를 무시한다. |
-f | 대소문자를 구분하지 않는다 |
-c | 파일이 이미 정렬되어있는지 확인 - 만일 정렬이 되어있지 않을 경우, 에러 메시지를 출력하며, 종료를 하면서 1을 리턴한다. |
-o [저장할 파일명] --output=[저장할 파일명] |
저장할 파일 명을 명시한다. 명시하지 않을 경우, 화면에 출력한다. |
-m --merge |
이미 정렬된 두 개의 데이터 파일을 병합한다. |
-R --random-sort |
해시키 값으로 무작위 정렬한다. |
예시-1)
#cat /etc/passwd |sort -k 4 -n -t ":"
/etc/passwd란 파일을 필드 구분자 ":"로 나누어진 파일의 4번째 필드를 기준으로 숫자정렬한다.
예시-2) 정렬된 데이터들을 저장하는 경우
# 첫번째 방법
cat /etc/passwd/ |sort > passwd.sorted
# 두번째 방법
sort /etc/passwd -o passwd.sorted
Reference:
[1] ss64.com/bash/sort.html
[2] linuxhint.com/bash_sort_command/
728x90
'프로그래밍 언어 > Shell script(BASH)' 카테고리의 다른 글
[Shell script] 여러 개의 사용자 계정 만들기 (0) | 2021.06.03 |
---|---|
[Shell scripts] 기본적인 스크립트 제어 (if, for, where, case) (0) | 2021.05.17 |
[Shellscript] 정수 및 실수 연산 (0) | 2021.04.20 |
[Shellscript] 쉘, 쉘 스크립트 및 쉘 변수 (BASH) (0) | 2021.04.20 |
[Bash/Shell script] 디렉토리 리스트 출력 (0) | 2021.02.05 |
댓글