홈 › 리눅스 운영 › 02 / 13

텍스트 처리 (grep·sed·awk)

섹션 7진행 0 / 13

텍스트 처리 — grep 으로 찾고, sed 로 바꾸고, awk 로 집계하기

서버 로그에서 에러만 골라내고, 설정 파일 값을 한 줄로 바꾸고, 응답 시간 통계를 IDE 없이 내는 법을 배웁니다. 리눅스의 모든 것은 텍스트이고, 이 세 도구가 그 텍스트를 다루는 기본 연장입니다.

1. 왜 배우는가

장애가 나면 가장 먼저 하는 일은 로그를 읽는 것입니다. 로그는 수만 줄이고 서버에는 IDE 가 없습니다. grep 한 줄이면 수만 줄에서 ERROR 만 3초 만에 뽑아냅니다.

설정 파일도 텍스트입니다. application.properties 의 포트를 바꾸거나 DB 주소를 운영용으로 치환할 때 vi 를 열어 손으로 고치면 실수가 납니다. sed 는 그 작업을 명령 한 줄로, 백업까지 남기며 처리합니다.

세 번째는 집계입니다. "오늘 /api/pay 평균 응답 시간이 얼마인가" 를 자바로 짜면 파일 읽기와 파싱에 30줄이 듭니다. awk 는 같은 일을 한 줄로 끝냅니다. 이 레슨은 이 세 도구와 sort·uniq·cut·xargs 같은 보조 도구를 파이프로 엮는 법을 다룹니다.