Grep AND, OR, NOT 사용 명령어

DECEMBER 20, 2020

#1. AND

#1.1. pipe를 이용해 여러번 사용

cat test.txt | grep pattern1 | grep pattern2

#1.2. -E 옵션 사용

  • 순서가 pattern1 다음 pattern2 가 매치되는 라인

    $ grep -E grep "pattern1.*pattern2"
  • 순서가 상관 없으려면

    $ grep -E grep "pattern1.*pattern2|pattern2.*pattern1"

#2. OR

#2.1. -e 옵션 사용

$ cat test.txt | grep -e pattern1 -e pattern2

#2.2. -E 옵션 사용

$ cat test.txt | grep -E "pattern1|pattern2"

#3. NOT

3.1. -v 옵션을 이용

cat test.txt | grep -v pattern1 | grep -v pattern2

(사용로그)

$ cat log | grep -E "Done createContract \[[0-9]{4,5}\]" -B32 | grep -E "Request|controller| \[[7-9]{1}[0-9]{2}| \[[0-9]{4,5}\]"
$ cat total2.log | grep -B25 "Done renewContract" | grep -E " \[1[5-9]{1}[0-9]{2}| \[[2-9]{1}[0-9]{3,4}\]| \[[1-9]{1}[0-9]{4}\]| \[[7-9]{1}[0-9]{2}"

작업 기록 블로그