본문 바로가기

OS/LINUX [UNIX]

파일 내에 있는 문자열 검색

728x90
grep -rnw '/path/to/somewhere/' -e "pattern"

-r 또는 -R 은 리커시브하게 하위 폴더까지 검색하는 옵션이고, -n 은 라인넘버, 그리고 -w 는 모든 단어가 일치해야 한다는 옵션이다. . -l (영문 L) 옵션을 추가하면 파일 명까지 지정해 줄 수 있다.

 

이것과 함께, --exclude 또는 --include 파라메터를 써서 더 효율적으로 검색을 할 수 있다. 

grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"

 

이 코드를 이용하면 확장자가 .c 또는 .h 인 파일만 찾아준다. --exclude도 비슷한데,

 

grep --exclude=*.o -rnw '/path/to/somewhere/' -e "pattern"

이 코드를 이용하면 .o 확장자를 빼고 검색해 준다. 

 

파일을 포함/제외하는 것과 마찬가지로, 디렉토리를 --exclude-dir 그리고 --include-dir 파라메터를 이용하여 포함/제외 시킬 수 있다. --exclude-dir는 아래와 같이 이용할 수 있다.

grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"

 

'OS > LINUX [UNIX]' 카테고리의 다른 글

[Solaris] dtrace 사용  (0) 2024.07.18
시그널 모음  (0) 2024.05.20
리소스 분석 시 사용하는 OS 명령어  (0) 2024.02.22
netstat  (0) 2024.01.10
[Ubuntu] apt-get update VS apt-get upgrade  (0) 2024.01.08