AWK는 다양한 내장 함수와 변수를 제공하며, 이를 활용하여 텍스트 파일을 처리할 수 있습니다.
아래는 AWK의 주요 내장 함수와 변수와 그 사용법에 대한 설명입니다.
1. 내장 변수
|
2. 내장함수
|
간단하게 아래와 같은 file.txt 파일이 있다고 할 때
apple,banana,orange grape,kiwi,melon |
첫번째 필드의 길이는 다음과 같은 스크립트로 출력할 수 있다.
awk -F, '{print length($1)}' file.txt |
로그 파일과 같은 텍스트 파일에서 특정 숫자의 빈도를 출력하는 예제를 알아 보면 다음 과 같다.
아래와 같은 파일이 주어진다면
123,456,789 234,567,890 345,678,901 456,789,012 |
다음 awk 스크립트로 각 숫자의 빈도를 출력한다.
grep -o '[0-9]*' file.txt | awk '{for(i=1;i<=NF;i++) {if($i!="") count[$i]++}} END {for(num in count) {print num, count[num]}}' |
1. grep -o '[0-9]*' file.txt: 정규식 [0-9]*를 이용하여 파일에서 숫자만 추출합니다.
2. awk '{for(i=1;i<=NF;i++) {if($i!="") count[$i]++}} END {for(num in count) {print num, count[num]}}': awk를 이용하여 각 숫자별 빈도를 출력합니다.
(1) for(i=1;i<=NF;i++) {if($i!="") count[$i]++}: 각 라인에서 숫자를 추출하여 배열 count에 저장합니다.
(2) END {for(num in count) {print num, count[num]}}': 모든 라인을 처리한 후, 배열 count의 각 항목에 대해 숫자와 빈도를 출력합니다.
'아는 것이 힘 > LINUX' 카테고리의 다른 글
[Python] 텍스트 파일에서 공백 줄(blank line) 삭제하기 (0) | 2023.07.10 |
---|---|
[서버 관리]파일 개수 출력 명령문 (0) | 2023.06.08 |
[Putty] 한글깨짐 (0) | 2020.10.21 |
[Linux]RPM (0) | 2020.10.05 |
[Linux] RAID (0) | 2020.10.05 |