린아저씨의 잡학사전

Linux를 사용하다보면 ls cd 만큼 많이 사용하는게 grep 명령어 입니다. 

 

그래서 조금 더 grep에 대해 자세히 정리하고자 합니다.

 


grep은 입력되는 파일에서 주어진 패턴 목록과 매칭되는 라인을 검색한 다음 출력해주는 명령어 입니다.

 

1. 기본 문법

grep [option] pattern [file]
 
 

2. 옵션

 

옵션

설명

-c

매칭된 검색 결과를 출력하지 않고 매칭된 행의 총 라인 수를 출력한다.

-i

매칭에 사용하는 문자의 대소문자를 구분하지 않는다.

-l

패턴에 매칭된 라인이 하나라도 있는 파일의 이름만을 출력한다.

-n

파일 내에서 매칭된 행 번호를 함께 출력한다.

-s

에러 메시지 외에는 출력하지 않는다.

-v

패턴과 매칭되지 않는 행만 출력한다.

-w

\< \>로 둘러싸인 패턴표현을 하나의 단어로 취급하여 검색한다.

 
 

3. grep에서 사용하는 정규표현식 메타 문자

 

메타문자

설명

^

행의 시작 지시자  ex) ^joon : joon으로 시작하는 모든 행을 출력함

$

행의 끝 지시자  ex) joon$ : joon으로 끝나는 모든 행을 출력함.

.

하나의 문자와 대응   

ex) j..n : 총 4개의 문자로 이루어진 문자열 중에 처음 문자는 j 끝문자는 n으로 끝나는 문자의 행을 출력함

*

매칭되는 문자가 없거나 하나 이상의 문자에 대해 매칭 ex)joo* : joo, joon, jooo, jood, joon0312 전부 매칭

[]

[ ]안에 문자 중 어떤 하나라도 매칭  ex) joo[n,d,o] : joon, jood, jooo 매칭

 
 

4.

 
메타문자 [^] 사용
[root@test00 ~]# grep joo[^n] grep_test.txt

jood
jooo
joof
 
옵션 -i 사용
[root@test00 ~]# grep -i jo.n grep_test.txt

joon
JoOn0312
JOON123

 

당신에게 추천하는 콘텐츠

공유하기

facebook twitter kakaoTalk kakaostory naver band