본문
<find 와 grep 으로 특정 문자열을 찾는 방법>
find / -name "*.cpp" -print -exec grep "#include" {} \;
-- root 아래에서 부터 확장자가 cpp 인 소스에서 "#include" 란 문자열이 포함된 파일 검색
find . -name "*.cpp" -print -exec grep "#INCLUDE" {} \;
-- 검색하는 파일리스트를 한번씩 출력해줍니다.(찾고자 하는 패턴이 없는 것은 검사한 파일 리스트만 출력하며, 패턴이 있으면 검사한 파일 리스트와 찾은 소스의 부분을 출력합니다.
find . -name "*.cpp" -exec grep "#INCLUDE" {} \;
-- 검색하는 파일리스트를 출력하진 않습니다. 찾고자 하는 패턴이 있으면 찾은 소스부분만을 출력합니다.
find . -name "*.cpp" -print -exec grep "#include" {} \;
-- 검색하는 파일리스트를 한번씩 출력해줍니다.(찾고자 하는 패턴이 없는 것은 검사한 파일 리스트만 출력하며, 패턴이 있으면 검사한 파일 리스트와 찾은 소스의 부분을 출력합니다.
find . -name "*.cpp" -exec grep "#include" {} \;
-- 검색하는 파일리스트를 출력하진 않습니다. 찾고자 하는 패턴이 있으면 찾은 소스부분만을 출력합니다.
find . -type f -print | xargs grep "#include"
-- 현재 디렉토리에서 하위 디렉토리를 포함하여 검색어를 검색할때(왼쪽에 파일명이 나타납니다)
find . -type f | xargs grep "#include"
-- 위의 것과 결과는 같습니다.
grep -l "#include" find . -name *.cpp
-- 파일 이름만 보여주는 경우
관련링크
댓글목록
등록된 댓글이 없습니다.