• 흐림동두천 13.3℃
  • 흐림강릉 23.1℃
  • 서울 13.9℃
  • 흐림대전 16.4℃
  • 대구 20.7℃
  • 구름많음울산 21.0℃
  • 구름많음광주 17.0℃
  • 흐림부산 20.2℃
  • 흐림고창 12.7℃
  • 흐림제주 17.1℃
  • 흐림강화 12.2℃
  • 흐림보은 17.4℃
  • 흐림금산 16.4℃
  • 흐림강진군 19.0℃
  • 흐림경주시 22.0℃
  • 흐림거제 18.7℃
기상청 제공

programming

find + grep 조합 스크립트

유닉스 계열에서 범용으로 사용할 수 있습니다.
find . -name "*.php" -print | xargs grep -l "string"


1. 현재 디렉토리의 모든 c 소스파일에서 "popen" 이 포함된 파일 리스트 출력
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -l "popen"

2. 현재 디렉토리의 모든 c 소스파일에서 "popen" 이 포함된 파일과 내용 출력
 find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -n "popen"

3. 현재 디렉토리의 모든 c 소스파일에서 "popen" 과 "pclose"가 모두 포함된 파일리스트 출력
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -l "popen" | xargs grep -l "pclose"

4. 현재 디렉토리의 모든 c 소스파일에서 "popen" 또는 "pclose"가 포함된 파일리스트 출력
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -le "popen" -le "pclose"

또는 grep에 e옵션이 없으면
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -l "popen";find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -l "pclose"

5. 현재 디렉토리의 모든 c 소스파일에서 "popen" 또는 "pclose"가 포함된 파일과 내용 출력
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -e "popen" -e "pclose"

또는 grep에 e옵션이 없으면
find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -n "popen";find . -name "*.[ch]" ! -size 0 ! -type l -print | xargs grep -n "pclose"