본문 바로가기

OS/Unix

[UNIX] grep, find

grep

grep

파일 내에서 지정한 패턴이나 문자열을 찾은 후에, 그 패턴을 포함하고 있는 모든 행을 출력하는 명령어.

하나 이상의 파일로부터 변수, 또는 함수명을 찾을 때 많이 사용된다. 

 

기본 문법

grep [옵션] [패턴] [파일]

 

파일 옵션

파일 옵션에는 여러 개의 파일명이 들어갈 수 있다. 

  • * : 현재 디렉터리 내에 있는 모든 파일 탐색
  • *. log : 특정 확장자를 가진 모든 파일 탐색
  • / : 최상위 디렉터리 내에 있는 모든 파일 탐색

옵션

옵션 의미
-r 하위 디렉토리까지 검색한다
-i 대소문자 구분을 하지 않는다.
-l 패턴이 포함된 파일의 이름을 출력한다.
-v 패던과 일치하지 않는 행만 출력한다.
-c 패턴이 일치하는 행의 수를 출력한다
-w 패턴이 전체 단어와 일치하는 행만 출력한다.
-n 패턴이 일치하는 행의 번호를 출력한다.

사용 예

grep -r '패턴' *
>> 현재 디렉토리와 서브디렉토리의 모든 파일에서 패컨이 들어간 문자열을 출력한다.

grep -l '패턴' *
>> 현재 디렉토리의 모든 파일에서 패턴이 들어간 파일의 이름을 출력한다. 

grep -v '패턴' test
>> test 파일 내에서 패턴이 들어가지 않은 행을 출력한다.

egrep과 grep의 사용법 차이

egrep '패턴1|패턴2'
>> OR 연산
>> 패턴1 || 패턴2

grep '패턴1' | grep '패턴2'
>> AND 연산
>> 패턴1 && 패턴2

 

 

 

find

 

find

현재 디렉터리부터 하위 디렉터리까지 탐색하여 주어진 조건을 충족하는 파일 및 디렉터리를 찾아 출력해주는 명령어

기본 문법

find [검색 디렉터리] [옵션] [파일(검색단어)]

옵션

옵션 의미
-name 파일명을 검색할때 대소문자를 구분한다.
-iname 파일명을 검색할때 대소문자를 구분하지 않는다. 

사용 예

find . -name 'FILENAME'
>> 현재 디렉토리부터 하위 디렉토리까지 찾아서 파일이름이 FILENAME 인 것을 출력
find -name '*.pc'
>> 현재 디렉토리부터 하위 디렉토리까지 확장자가 .pc인 파일을 모두 출력한다.

 

 


Unix/Linux 문자열 패턴 검색(grep) :: Giles Programing (tistory.com)

 

Unix/Linux 문자열 패턴 검색(grep)

◎ 패턴 검색 [grep] grep 명령은 파일 내에서 지정한 패턴이나 문자열을 찾은 후에, 그 패턴을 포함하고 있는 모든 행을 표준 출력해 준다. 물론, 한 디렉토리 내에서 지정한 패턴을 포함하는 파일

giles.tistory.com

https://honeyteacs.tistory.com/38

 

[리눅스 명령어] find, grep : 파일 찾기 명령어

1. find : 하위 폴더에 존재하는 파일을 찾아주는 명령어 find [검색 디렉토리] [옵션] [파일명] 옵션 의미 -name 대소문자 구분하여 파일명 검색 -iname 대소문자 구분하지 않고 파일명 검색 ex) find . -nam

honeyteacs.tistory.com

 

'OS > Unix' 카테고리의 다른 글

[UNIX] crontab 스캐줄러  (0) 2023.04.18
[UNIX] 네트워크 연결 확인 - netstat / + port,socket  (0) 2023.02.11
[UNIX] 디스크 용량 확인 - df, du  (0) 2023.02.11