IT/Linux

grep, egrep: 문자 및 파일 필터

달상자 2015. 3. 20. 15:05

grep:

예)

cat test.txt | grep test1

>​ test.txt. 파일에서 "test1"이 포함된 문자열 라인을 찾는다.


cat test.txt | grep -iE "app|star"

> test.txt 파일에 대소문자를 가리지 않고 "app" or "star" 단어가 들어간 라인을 출력


egrep:

예)

 cat test.txt | egrep "test1|test2"

>​ test.txt. 파일에서​ "test1' or "test2"이 포함된 문자열 라인을 찾는다. 




grep  |(파이브) 옵션

   -v: 문자에 매칭되지 않은 내용 출력

   -i: 대소문자를 가리지 않음

   -n: 해당 내용 위치출력

   -E: 복수 단어 매칭 출력 (egrep과 사용법 같음)

   -A Num: 패턴 매칭 후 이후 라인 수 만큼 출력

   -B Num: 패턴 매칭 후 이전 라인 수 만큼 출력

   -C Num: 패턴 매칭 후 전후 라인 수 만큼 출력


grep 단독 옵션

-l: 문자에 매칭되는 파일리스트 출력

-n: 문자에 매칭되는 파일리스트와  해당 내용 위치출력( -l 과 따로 사용)

-R: 하위폴더까지 같이 검색


예)

grep -l jpg *

> 현재 위치에서 모든 파일 중 jpg내용이 포함된 파일리스트 출력


grep -nER "jpg|gif" *

> 현재 위치에서 하위폴더를 포함한 모든 파일 중 jpg와gif 내용이 포함된 파일 리스트와 위치출력