본문 바로가기

보안/강의정리

리눅스 명령어 grep

728x90

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

 

 

문법

#grep [옵션] [찾고싶은 패턴] [파일명]

#grep -n 'root' /etc/passwd

root를 하이라이트 해서 보여준다.

여기서 리눅스 정규표현식(Regular Expression)을 사용하여 더 정교하고 구체적이게 사용할 수 있다.

 

예를들어 문자열의 처음 시작부분만 매칭하게 해주는 "^" 을 넣으면

 

#grep -n '^root' /etc/passwd

첫 root만 찾아준다.

이런식으로 무궁무진하게 활용할 수 있다.

 

옵션

-E PATTERN을 확장 정규 표현식으로 해석
-F PATTERN을 정규 표현식이 아닌 일반 문자열로 해석
-G PATTERN을 기본 정규 표현식으로 해석
-P PATTERN을 per1 정규 표현식으로 해석
-e 매칭을 위한 PATTERN 전달
-f 파일에 기록된 내용을 PATTERN으로 사용
-i 대/소문자 무시
-v 매칭되는 PATTERN이 존재하지 않는 라인 선택
-w 단어 단위로 매칭
-x 라인 단위로 매칭
-z 라인을 newline(\n)이 아닌 NULL(\0)로 구분
-m 최대 검색 결과 갯수 제한
-b 패턴이 매치된 각 라인의 바이트 옵셋 출력
-n 검색결괴 출력 라인 앞에 라인 번호 출력
-o 매치되는 문자열만 표시
-q 검색 결과 출력하지 않음
-a 바이너리 파일을 텍스트 파일처럼 처리
-I 바이너리 파일은 검사하지 않음
-d 디렉토리 처리 방식 지정
-D 장치 파일 처리 방식 지정
-r 하위 디렉토리 탐색
-R 심볼릭 링크를 따라가며 모든 하위 디렉토리 탐색
-L PATTERN이 존재하지 않는 파일 이름만 표시
-l 패턴이 존재하는 파일 이름만 표시
-c 파일 당 패턴이 일치하는 라인의 갯수 출력
-H 검색결과 출력 라인 앞에 파일이름 표시
-h 검색결과 출력시, 파일이름 무시.

 

 

728x90

'보안 > 강의정리' 카테고리의 다른 글

리눅스 입출력 재지정 (I/O Redirection)  (0) 2021.06.20
리눅스 디렉터리 구조(계층 구조)  (0) 2021.06.20
리눅스 기본 명령어 모음  (0) 2021.06.14
Private IP(사설IP), Public IP (공인IP)  (0) 2021.06.11
VLAN  (0) 2021.06.10