grep

출처

설명

지정한 문자열을 포함하고 있는 행을 검색합니다.

주요 옵션

옵션 내용
-i 대소문자 구분없이 검색
-v 해당 문자를 제외하고 검색
-n 검색한 문자의 행 출력
-l 검색한 문자가 들어 있는 파일 이름 출력
-r 하위 디렉토리를 포함하여 검색

사용예제

기본 문법은 다음과 같습니다.

grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

# 파이프를 이용한 데이터 입력 
cat file_name.txt | grep PATTERN

주요 사용방법은 다음과 같습니다.

# test.txt 파일 내용 
$ cat test.txt 
a
b
c
d
e
f
g
h
i
j
k

# 대소문자 구분없이 확인 
$ grep -i A test.txt
a

# 해당 문자를 제외하고 검색 
$ grep -v a test.txt
b
c
d
e
f
g
h
i
j
k

# 검색한 문자의 행 번호를 출력 
$ grep -n a test.txt
1:a

# 검색한 문자가 포함된 파일 이름 출력 
$ grep -l a test.txt
test.txt

여러개의 파일에서 파일명과 함께 검색

# 여러개의 파일에서 파일명과 함께 검색한 문자 출력 
$ grep a *
test2.txt:a
test.txt:a

# 하위 디렉토리를 포함하여 검색
$ grep -r a *

정규식을 이용한 검색

$ cat test.txt | grep "[a|b]"
a
b

문자가 있는 파일 출력: jar파일에서 클래스 찾기

$ grep -l "org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider" * 
jackson-jaxrs-1.9.13.jar

links

social