• 맑음동두천 0.5℃
  • 맑음강릉 6.4℃
  • 맑음서울 0.5℃
  • 구름많음대전 4.6℃
  • 연무대구 6.8℃
  • 연무울산 7.8℃
  • 연무광주 6.8℃
  • 연무부산 8.3℃
  • 구름많음고창 6.2℃
  • 맑음제주 11.0℃
  • 맑음강화 -0.3℃
  • 구름많음보은 3.3℃
  • 맑음금산 5.4℃
  • 흐림강진군 8.1℃
  • 맑음경주시 7.4℃
  • 맑음거제 8.3℃
기상청 제공

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"