awk도 sed (https://workspace-2308.tistory.com/entry/sed-basic-command) 명령어와 같이 텍스트 처리를 위해 유닉스 기반 시스템에 사용되는 명령어입니다.
입력으로부터 한 줄씩을 읽어서 정규표현식으로 조건이 맞는지를 검사하고 참으로 판명되면 그 줄에 대해 명령어를 실행하는 형식입니다.
우선 간단하게 행과열을 생각해볼때
레코드 : 행 : $0
필 드 : 열 : $1, $2, ..., $n
아래 예시를 보면서 이해해보도록 합시다.
awk 'pattern {action}' <file>
- pattern : 검색할 텍스트를 정의하는 정규 표현식
- action : 텍스트에 대해 수행할 작업을 지정
필드 출력
awk '{ print $1 }' example.txt
- example.txt에서 $1 = 1열을 출력.
여러개의 필드 출력
awk '{ print $1,$3 }' example.txt
- 1,3열을 출력.
조건에 맞는 레코드 출력
awk '{ if ( $3 > 19 ) print ($0) }' example.txt
- example.txt에 3번째 필드가 나이라고 할때 성인만 출력하고 싶을 경우 $0 레코드가 출력될 수 있습니다.
- IF / WHILE 문 등 출력하고 싶은 조건만 잘 넣어주면 원하는 레코드, 필드를 출력 가능합니다.
반응형
'Linux' 카테고리의 다른 글
Linux - rm 명령어 사용법 (0) | 2023.03.27 |
---|---|
Scp remote to Local to remote (0) | 2023.03.14 |
sed 명령어 (0) | 2023.03.06 |
grep 문자열 찾기 (0) | 2023.02.22 |
Disk 명령어 df / du (0) | 2023.02.18 |