바닥코딩
리눅스 명령어 - 문자열 처리 본문
이번 포스트에서는 문자열 처리를 위한 명령어에 대해 다루어 보겠습니다.
awk
입력을 주어진 분리자(field seperator)로 분리하여 명령을 처리합니다.
옵션
F | 문자열을 분리할 기준이 되는 구분자 입력 |
v | 파라미터 전달 |
내장함수
sub | 지정한 문자열 치환 |
gsub | 문자열 일괄 치환 |
index | 주어진 문자열과 일치하는 문자의 인덱스를 반환 |
length | 문자열의 길이를 반환 |
substr | 시작위치에서 주어진 길이 만큼의 문자열 반환 |
split | 문자열을 분리하여 배열로 반환 |
문자열 출력 | |
printf | 지정한 포맷에 따라 함수 출력 |
system | 명령 실행 |
cat
파일을 읽어 내용을 표시합니다.
옵션
-n | 행번호를 표시합니다. |
-b | 공백을 제외하고, 행번호를 표시합니다. |
cut
구분자로 구분하여 원하는 값만 출력
옵션
-c | 지정한 행을 출력 |
-d | 딜리미터를 지정 |
-f | 딜리미터로 잘라진 행을 출력 |
diff
파일 두개를 비교하여 다른 부분을 출력합니다
옵션
-i | 대소문자 무시 |
echo
문자열이나 변수를 출력
옵션
-n | 개행을 하지 않음 |
-e | 이스케이프 문자를 허용 |
-E | 이스케이프 문자를 허용하지 않음(디폴트) |
grep
지정한 문자열을 포함하고 있는 행을 검색합니다.
옵션
-i | 대소문자 구분없이 검색 |
-v | 해당 문자를 제외하고 검색 |
-n | 검색한 문자의 행 출력 |
-l | 검색한 문자가 들어 있는 파일 이름 출력 |
예제
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
# 파이프를 이용한 데이터 입력
cat file_name.txt | grep PATTERN
sed
텍스트 데이터를 패턴 매칭하여 처리
옵션
-f | 처리할 명령을 저장한 파일을 지정 |
-i | 원본 파일에 덮어 씀 |
예제
$ cat sample.txt
one
two
three
four
# o를 1로 변경
# s/이전문자/변경할문자/g 형식으로 입력
$ sed 's/o/1/g' sample.txt
1ne
tw1
three
f1ur
# 탭(Tab)을 콤마(,)로 변경하고 출력
$ sed 's/\t/,/g' sample.txt
# 탭(Tab)을 콤마(,)로 변경하고 sample.txt 에 덮어 씀
$ sed -i 's/\t/,/g' sample.txt
sort
텍스트를 정렬합니다.
옵션
-k | 정렬할 포지션을 지정 |
-t | 필드를 구분하는 구분자. 기본값은 공백과 탭 |
-r | 역순으로 정렬 |
tr
입력을 주어진 분리자(field seperator)로 분리하여 명령을 처리합니다. 문자를 변경하거나 삭제할 때 사용합니다.
옵션
-d | 문자를 삭제 |
'네트워크 & 리눅스 > 리눅스' 카테고리의 다른 글
리눅스 명령어 - 파일 처리 (0) | 2024.04.03 |
---|---|
리눅스 명령어 - 파일 시스템 (0) | 2024.04.01 |
리눅스 명령어 - 시스템 관리(2/2) (0) | 2024.03.28 |
리눅스 명령어 - 시스템 관리(1/2) (0) | 2024.03.28 |
리눅스 파일 시스템 구조 (0) | 2023.09.24 |