본문 바로가기

개발/리눅스

파일 내 내용을 찾아보자

반응형

많은 파일들을 하나하나 열어 원하는 내용을 찾기는 힘들다.

find 명령어로 고고싱


find ./ -name "검색할파일들" | xargs grep "검색할단어"


예)

HTML파일중에 피카츄란 내용을 찾고 싶다.

find ./ -name "*.html" | xargs grep "피카츄"


CSS파일중에 .header class를 찾아 수정해야 하는데 어디에 있는지 모르겠다.

find ./ -name "*.css" | xargs grep "header"


모든 파일중에 010 번호를 찾고 싶다.

find ./ -name "*" | xargs grep "010"


이렇게 하면(아래는 예시)

./event/now.htm:   <option value="010">010</option>

./event/now2.htm:   <option value="010">010</option>

./old/older.htm:   <option value="010">010</option>


이런식으로 어디파일에 있는지 리스트가 나온다.



어? 잠깐, 예전에는 라인도 나온거 같은데..

다른 명령어인가?

아니다 옵션이 있었군.


find ./ -name "*.css" | xargs grep -n "header"


grep 에 -n 옵션을 주면 라인도 나온다.

./event/now.htm:30:<option value="010">010</option>


이런식으로.



하지만 이렇게 하면 오류도 다 출력을 한다. (막 깨진 글씨들?)

2>/dev/null 을 추가해서 오류는 안나오게 하자.


파일 내 문자를 찾으려면 최종적으로 아래처럼 하면 되겠다.


find ./ -name "검색할파일들" | xargs grep -n "검색할단어" 2>/dev/null


반응형

'개발 > 리눅스' 카테고리의 다른 글

Let's Encrypt 인증서 설치 및 적용하기 #1  (2) 2018.10.17
yum 으로 php 7.2 설치하기  (0) 2018.09.20
아파치 이눔시키  (0) 2018.06.27
mod_cband 를 설치 해 보자 #2  (3) 2017.06.07
mod_cband 를 설치 해 보자 #1  (0) 2017.05.23