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

+ Recent posts