AWK
- 유닉스에서 처음 개발된 일반 스크립트 언어이다.
- awk는 짧은 프로그램을 구현하기 위해 개발되었다.
- 복잡한 프로그램을 작성하지 않고 파일에 대한 패턴 처리를 쉽게 할 수 있다.
- 필드를 자유자재로 조작하여 데이터 양식의 문서나 자료를 처리하여 다른형태의 문서 또는 결과물로 출력하는데 쓰인다.
- 논리연산, 특수문자, 조건, 반복문 가능
awk [-f prog-file] [-F c] ['pattern {action}'] [filename] _
1) -f prog-file : awk의 실행 action을 가진 프로그램 파일 지정
2) -F c : 필드 구별자
3) pattern {action} : awk program의 커맨드는 싱글 쿼트('') 혹은 더블쿼트("")로 둘려 쌓여있으며, action을 중괄호로 둘러싸여있다.
4) _ : awk 프로그램에 입력될 입력 파일 지정
AWK의 내부 변수
ex) awk '{print NF}' test.txt
ex) awk '/Hello/ {print "%s %10.3f\n", $1, NF}' Hello.txt
ex) jstat -gc [PID] 1000 | awk '{ print "used Memory=", ($3 + $4 + $6 + $8)/1024, "\t\tHeapMemory=",($1 + $2 + $5 + $7)/1024 }'
- awk를 활용한 java 프로그램의 메모리 확인
SED
- Stream Editor의 약자, 비대화모드의 라인 단위 편집기
- Streaming 편집기
- 입력문자 또는 파일에 대해 특별한 기능을 사용하여 변환
- sed는 큰 파일을 처리할 때 주로 사용
- 주어진 주소 범위에 대해 입력의 어떤 라인을 조작할 것인지 결정
sed [-n] [-e script] [-f script_file] [filename]
ex) sed -n '/The/h' Hello.txt
1) [-n] : -n 옵션이 없다면 모든 입력의 출력
2) [-e script] : -e 옵션은 그다음에 나오는 스크립트를 sed 명령어로 해석. 옵션이 없다면 기본으로 지정됨.
3) [-f script_file] : -f 명령어를 통해 명령어를 파일에 저장해놓고 사용가능
-> sed -n -f scr.sed Hello.txt
'System > Linux,Unix' 카테고리의 다른 글
VI 편집기 명령어 정리 (0) | 2018.08.07 |
---|---|
명령어 정리 (0) | 2018.08.07 |
Unix의 구조 ( Kernel, Shell) (0) | 2018.08.03 |
Unix와 Linux의 차이 (0) | 2018.08.03 |
FreeMemory에 대한 이해 (0) | 2018.07.17 |