반응형
리눅스에서 로그 파일을 분석하거나 특정 키워드를 찾아야 할 때 grep 명령어는 가장 많이 사용되는 도구 중 하나입니다. 하지만 하나의 키워드가 아니라 여러 키워드를 한 번에 검색하려면 약간의 팁이 필요합니다. 이 글에서는 grep을 이용해 여러 문자열을 동시에 검색하는 방법을 소개합니다.
1. -E 옵션 사용 (확장 정규식)
가장 일반적이고 직관적인 방법은 -E 옵션을 사용하는 것입니다. 여러 키워드를 |(파이프)로 구분하여 입력하면 됩니다.
grep -E 'error|fail|critical' /var/log/syslog
이 명령은 error, fail, critical 중 하나라도 포함된 줄을 모두 출력해줍니다.
2. egrep 사용
egrep은 grep -E와 동일한 기능을 하며, 동일한 방식으로 사용할 수 있습니다.
egrep 'warn|denied|timeout' /var/log/messages
3. 키워드 파일을 이용한 검색 (-f 옵션)
검색할 키워드가 많을 때는 텍스트 파일로 따로 관리하면 편리합니다.
# keywords.txt
error
fail
timeout
그리고 다음 명령어로 검색합니다:
grep -f keywords.txt /var/log/syslog
4. 유용한 추가 옵션
- -i : 대소문자 구분 없이 검색
- -n : 줄 번호 표시
- --color=auto : 매칭된 키워드에 색상 적용
- -r : 디렉토리 전체 재귀 검색
예시:
grep -inr --color=auto 'error|fail|critical' /var/log
grep을 활용한 다중 키워드 검색은 에러 로그 분석, 보안 로그 확인, 서비스 상태 추적 등 다양한 상황에서 매우 유용합니다. 위 방법들을 조합해 보다 빠르고 정확한 분석을 해보세요.
반응형