부록 B. Sed 와 Awk 에 대한 간단한 입문서

차례
B.1. Sed
B.2. Awk

텍스트 처리 유틸리티인 sedawk에 대해서 아주 간단한 소개를 해드리겠습니다. 여기서는 몇 개의 기본적인 명령어만 살펴보는데, 쉘 스크립트에서 쓰이는 sed와 awk의 동작을 이해하는데는 부족함이 없을 것입니다.

sed: 비대화형(non-interactive) 모드의 텍스트 파일 에디터

awk: C 형태의 문법을 갖는 필드 단위의 패턴(field-oriented pattern) 처리 언어

이런 차이점에도 불구하고 이 둘은 비슷한 실행 문법을 갖는데, 정규 표현식을 쓰고, 기본 입출력은 표준입력과 표준출력을 쓴다는 것입니다. 이렇게 잘 정의된 유닉스식 특징 때문에 이 둘은 같이 잘 동작합니다. 파이프를 통해서 한 쪽의 출력을 다른 쪽으로 넘길 수 있기 때문에 이들의 이런 능력을 잘 엮어서 쓰게 되면 스크립트를 펄의 능력과 거의 비슷한 수준으로 끌어 올릴 수 있습니다.

참고: 한가지 중요한 차이점은 쉘 스크립트에서 sed로 인자를 전달하는 것은 쉬운데 비해 awk는 좀 더 복잡하다는 것입니다(예 34-3예 9-18 참고).