_리눅스 실습 커리큘럼 6/40 · 터미널에 익숙해지기 (3주차)_
1단계 후반은 텍스트 처리입니다. 파일을 다루는 데서 파일 안의 내용을 다루는 단계로 넘어갑니다. 수만 줄 로그를 눈으로 읽는 사람은 없습니다. 걸러내고, 정렬하고, 세는 세 단계를 파이프로 이어 붙이면 로그가 정보가 됩니다.
grep·sort·uniq 텍스트 처리, 왜 필요한가
- 장애 원인을 가장 빨리 찾는 길은 로그에서 필요한 줄만 뽑는 것입니다.
grep | sort | uniq -c조합은 텍스트 처리의 기본 문법입니다.- 리눅스마스터 2급·LPIC-1 텍스트 처리 단원의 핵심입니다.
이번 편에서 익힐 것
- 파이프
|— 앞 명령의 출력을 뒤 명령의 입력으로 - 걸러내기 —
grep,grep -v,grep -E,grep -c - 정렬과 중복 제거 —
sort,sort -u,uniq -c - 필드 뽑기 —
awk '{print $N}'
grep·sort·uniq 텍스트 처리 핵심 명령어
grep ERROR app.log > errors.log # ERROR 줄만 저장
grep -v DEBUG app.log # DEBUG 제외
grep -E "ERROR|FATAL" app.log # 둘 중 하나
grep -c ERROR app.log # 건수만
sort users.txt | uniq > unique_users.txt # 정렬 + 중복 제거
sort -u users.txt # 같은 결과
awk '{print $7}' access.log | grep -E '^/' | sort | uniq -c | sort -rn | head
# 요청 경로별 횟수, 많은 순
uniq는 바로 붙어 있는 중복만 인식하므로 항상sort뒤에 옵니다.- 필드 번호는
head -1로 한 줄을 보고 공백 단위로 세어 정합니다.
grep·sort·uniq 텍스트 처리 자주 하는 실수
uniq앞에sort누락 — 중복이 남습니다.- 대소문자 —
error와ERROR는 다릅니다. 지문의 표기를 그대로. - 필드 번호 착각 — 웹 로그의 경로는 보통 7번째지만 형식마다 다릅니다.
grep·sort·uniq 텍스트 처리 실습 문제
- 오류 로그만 추출하기
- 사용자 목록 정렬 및 중복 제거
- HTTP 오류 경로 목록 만들기
다음 편
다음 편은 텍스트 처리 2: awk·cut으로 passwd·CSV 다루기 입니다. 화·금요일에 이어집니다.
<!-- publish_key:linux-path-20w-p06-post -->

아직 댓글이 없습니다. 궁금한 점이나 풀이 경험을 남겨 보세요.