리눅스에서 grep은 정규표현식으로 특정 문자열을 찾을 수 있는 기능도 제공합니다. 은근히 응용할곳도 많고 자주 사용되니 알아두시면 좋습니다.
명령어 | 설명 | 정규표현식 사용 |
grep | 다중 패턴을 검색한다. | O |
egrep | 정규 표현식 패턴으로 검색한다. | O |
fgrep | 문자열 패턴으로 검색한다. | X |
grep은 3가지 종류가 있습니다. egrp은 정규표현식만으로 검색하는 것이고, fgrep은 문자열로 검색하는 grep을 말하며 각각 grep의 -E, -F 옵션을 사용했을 때와 결과는 같습니다.
tail -f mylog.log | grep 192.168.15.86
grep은 다른 명령어와 조합해서 사용하는 경우도 많습니다. 대부분 개발자들이 실시간 로그 체크를 할 때는 tail과 grep 명령어 조합으로 로그파일에서 자신이 원하는 키워드만 추출하고는 합니다. 위의 명령어대로 사용하시면 mylog파일을 실시간으로 액세스하고 IP주소가 192.168.49.16인 행만 추출할 수 있겠습니다.
cat mylog.txt | grep 'Apple' | grep 'Banana'
| 파이프를 사용하면 grep명령어를 여러 개 사용하여 특정 파일에서 여러 개의 문자열을 찾을 수 있을 수도 있습니다. 위의 명령어대로 입력한다면 mylog.txt 파일에서 Apple과 Banana이 있는 문자열들을 찾을 수 있겠습니다.
grep -n 'Apple' mylog.txt > result.txt
grep한 결과가 길면 터미널에서 확인이 어렵기 때문에 txt파일로 저장하여 확인하고는 합니다. 위의 명령어대로 입력한다면 mylog.txt 파일에서 Apple이 있는 문자열들을 result.txt 파일에 저장하실 수 있습니다.
압축풀기 그리고 Linux core 명령어 (0) | 2022.08.02 |
---|---|
잠깐 리눅스 명령어 ~ (0) | 2022.08.02 |