grep을 이용해서 검색할때 *.c 파일에서만 하기

dreamer의 이미지

grep -r text *

하면 모든 디렉토리에서 text를 검색 하잔아요..
그런데 하위 디렉토리 중에서 *.c 파일에서만 하려면 어떻게 하는지요?
지아의 이미지

grep -r text *.c

하위 디렉토리에서만 확인 하신다면

grep text */*.c

#kill -9 world

morison77의 이미지

Quote:
find . -name "*.c" -print | xargs grep text

light my fire

dreamer의 이미지

두분 답변에 감사 드립니다.
그런데

grep -r text */*.c

recursive하게 검색되는거는 아니지요?
단지 바로 아래 디렉토리에서만 적용되는 거 같군요
pynoos의 이미지

dreamer wrote:
두분 답변에 감사 드립니다.
그런데
grep -r text */*.c

recursive하게 검색되는거는 아니지요?
단지 바로 아래 디렉토리에서만 적용되는 거 같군요

grep -r text .

이렇게 해야지요. -r 이 들어가면 디렉토리를 인자로 줘야 효과가 있습니다.

-r 은 리눅스 버전에만 됩니당..

gsong의 이미지

제가 자주 쓰던 명령입니다.

grep text `find . -name *.c`

morison77 님이 올려주신거랑 비슷하네요 :D

dreamer의 이미지

grep -r text . 

간단한 것이 좋은 것이다...
가장 가까운데 답이 있었는데, 그걸 몰랐네요..
하하 좋습니다.
다른 분들 답변도 모두 고맙습니다.
find 사용은 일반적으로 많이 쓰는 방법이죠