제가 자주쓰는 grep 명령어에 대해 정리해보려해요! (잊어버리고 다시 찾아보곤 해서,,,) 일단, grep을 어떨때 사용하는 것인지 모르시는 분들이 있을수있기에 간단히 설명해드릴께요 😊 예를들어 엄청 많은 정보가 들어있는 로그파일을 서버에서 읽을때 저는 주로 사용하는데요 저는 그 로그파일에서 특정한 부분만 보고싶은데 불필요한 로그까지 봐야할때! grep을 사용해서 찾고자하는 문장에 들어가있는 키워드만 적어주면 해당 키워드가 들어간 로그만 보여주기 때문에 쉽게 찾을 수 있는 명령어예요! 그럼 이제 grep의 사용방법을 알아볼께요! grep으로 특정한 키워드(단어)가 들어간 문장 찾기해당 keyword가 들어가있는 문장 모두 출력 cat logger.txt | grep 'keyword' grep으로 찾고싶은 단어가 복수개인데 or 조건일때해당 keyword1 or keyword2 중에서 하나라도 문장에 포함되어 있다면 출력 [방법1] cat logger.txt | grep -E 'keyword1|keyword2' grep으로 찾고싶은 단어가 복수개인데 AND 조건일때해당 keyword1, keyword2가 순서상관 없이 모두 포함되어 있는 문장 출력 [방법1] cat logger.txt | grep 'keyword1' | grep 'keyword2' 해당 keyword1, keyword2가 순서대로 포함되어있는 문장 출력 (아래 예시의 경우 keyword1 다음에 keyword2가 나온문장 출력) [방법1] cat logger.txt | grep -E 'keyword1.*keyword2' grep으로 해당단어가 포함되지 않은 문장 찾기[방법1] cat logger.txt | grep -v 'keyword' 반달가면 이글루에서 백업 - bahndal.egloos.com/418681 텍스트 파일에서 2개 이상의 문자열을 검색하는 방법이다. (A and B) 일단 A라는 문자열과 B라는 문자열이 모두 포함된 행을 찾는 것은 간단하다. 파이프(|)를 이용해서, A가 포함된 뿐을 골라낸 후에 거기서 B를 골라내면 된다. cat file.txt | grep A | grep B (A or B) A 또는 B가 포함된 행을 찾으려면 A와 B를 파이프(|) 기호로 연결하면 된다. 연산자로 인식하도록 역슬래시(\)를 붙여준다. cat file.txt | grep "A\|B" 또는 egrep 명령을 활용해도 된다. 작은따옴표(')와 괄호를 이용한다. cat file.txt | egrep '(A|B)' 만약 shell script에서 변수에 할당된 문자열을 사용하려고 한다면 egrep으로는 어렵고 앞에 언급한 파이프 기호를 이용해야 한다. str_a="1st string" str_b="2nd string" cat file.txt | grep "$str_a\|$str_b" |