본문 바로가기

DevOps/Linux

[Linux] Linux 명령어 grep

1. grep 명령어의 기능

grep은 입력으로 전달된 파일의 내용에서 특정 문자 또는 문자열을 찾고자할 때 사용하는 명령어이다.

 

2. 사용 예시

/usr/share/dict/words ( 다른 리눅스 파일에도 있는지모르겠지만 ) 파일로 다뤄보자.

 

grep cat /usr/share/dict/words

위의 grep 명령어를 하용하였을 때 나오는 결과값이다. cat가 붙어있는 그 어떠한 단어들을 모두 출력하는 모습을 볼 수 있다.

 

grep 'cat' /usr/share/dict/words
grep "cat" /usr/share/dict/words

위의 두 커맨드들도 같은 결과값을 낸다.

 

 

grep 'CAT[ILV]' /usr/share/dict/words

처음의 명령어와 무엇이 달랐을까? 바로 대괄호의 이용이다. [ILV]를 넣음으로서 CAT의 기본값의 뒤에 I , L 또는 V가 오는 어떠한 단어든 검색을 한다는 의미가 된다. 

 

grep 'CAT[^ILV]' /usr/share/dict/words

해당 명령어는 대괄호 안에 [^ILV]를 넣음으로써 CAT뒤에 문자는 오지만 I와L그리고V가 아닌 문자가 오는 것을 찾아내는 명령어이다.

 

grep ^CAT /usr/share/dict/words

 

^CAT 의 경우는 CAT이 맨 앞에 나오는 글자를 찾아내는 것

 

grep CAT$ /usr/share/dict/words

CAT$ 의 경우에는 CAT이 맨뒤에 존재하는 단어를 찾아낸다.

 

grep ^CAT$ /usr/share/dict/words

^CAT$의 경우 ^와 $사이의 단어만 찾아내는 것.  즉 CAT이라는 단어를 찾아내기 위함.

 

 

grep CAT.* /usr/share/dict/words

CAT 뒤에 문자가 올수도 있고 안올수도 있는 단어를 찾아내는것. 

 

grep C.*T /usr/share/dict/words

C와T 사이에 어떤 단어가 들어가더라도 출력이 된다.

'DevOps > Linux' 카테고리의 다른 글

[Linux] Linux 데이터베이스 기초  (0) 2021.08.24
[Linux] DNS 레코드  (0) 2021.08.23
[Linux] DNS 서버 만들기 실습  (0) 2021.08.23
[Linux] DNS  (0) 2021.08.23
[Linux] Linux 명령어 ls Commnad  (0) 2021.08.10