■ grep
$ grep ['검색할 문자'] [File]
- 특정 문자열을 검색해서 존재하는 라인을 출력하는 용도이다.
- 특정 파일에 대한 정보를 뽑아서 사용 가능하다.
- 일반적으로 따옴표는 큰 의미가 없다.
단, 띄어쓰기 등의 특수한 기능의 기호가 함께 사용될 때 필요하다.
" " | ₩, $, \ 기호 사용시 기능 활성화 |
' ' | 위 3가지 기호 기능 제거 |
■ 정규표현식 (grep)
- grep 명령어는 파일 등의 내용에서 특정 패턴 검색 시 사용하며 정규표현식을 이용해서 검색 가능하다.
^ | 패턴의 앞에 입력하면 해당 패턴이 라인의 시작 |
$ | 패턴의 뒤에 입력하면 해당 패턴이 라인의 끝 |
. | 임의의 문자 1개 |
* | 앞에 오는 문자의 개수가 0 ~ 무한 |
\ | 뒤에 오는 문자의 기능을 제거 |
■ grep 활용한 실습
□ 간단한 문제 풀이
$ grep -i [문자] [File]
$ grep '[Cc][Aa][Tt]' [File]
- -i 옵션을 통해 대/소문자 구분 없이 문자가 포함된 라인을 출력해준다.
- cat이라는 단어를 대/소문자 구분 없이 검색한다고 가정했을 때, 두 방식은 같은 검색 방법이다.
$ grep ^CAT [File]
- CAT(문자)가 앞부분에 오는 경우
$ grep CAT$ [File]
- CAT(문자)가 뒷부분에 오는 경우
□ 정규표현식 / 옵션
$ grep '^CAT$' [File]
- 대문자 CAT(문자) 만 존재하는 라인 검색
$ grep -w 'CAT' [File]
- -w 옵션을 통해 CAT(문자)이 존재하는 라인 검색
$ grep '^C.*T$' [File]
- 정규식을 활용하여 C로 시작해서 T로 끝나는 라인을 검색
$ grep 'C...T' [File]
$ grep 'C.\{3\}T' [File]
- 대문자 C와 T 사이에 3글자가 더 존재하는 라인 검색
$ grep -iw 'cat' [File]
- 옵션 -iw 를 통해 대/소문자 구분 없이 cat(문자)이 존재하는 라인 검색
$ grep -v 'CAT' [File]
- 옵션 -v 를 통해 CAT(문자)가 존재하지 않는 라인 검색
'Linux' 카테고리의 다른 글
[Linux] DNS Server (0) | 2021.08.23 |
---|---|
[Linux] 작업 스케줄링 (0) | 2021.08.17 |
[Linux] 사용자 관리 (0) | 2021.08.15 |
[Linux] touch, mv, cp, rm 명령어 (0) | 2021.08.11 |
[Linux] ls, man 명령어 (0) | 2021.08.11 |