공장이야기/Unix
find, grep을 활용한 unix 내용 검색
창신다이
2008. 6. 16. 17:42
find . -name '*.java' -exec grep -RHn svcCode {} \;
결과: 현재 디렉토리 하위에 있는 자바 파일에서 svcCode 라는 단어를 찾아서, 해당 파일의 이름과 단어가 있는 라인을 출력한다.
-exec는 find 결과를 grep의 입력으로 넣는다. 이때 {} 표시가 현재 찾은 파일을 뜻한다.
마지막에 세미콜론은 쉘명령의 끝을 알리고, 세미콜론이 특수문자이기 때문에 앞에 역슬래시가 붙는다.
-R: 디렉토리 재귀 탐색
-H: 파일이름 출력
-n: svcCode가 있는 라인 수 출력(-H 기능을 포함한다)
-l: 파일이름만 출력
find . -name '*.java' | grep -i cmd
-exec 옵션과 별개로 파이프(|) 명령어는 find의 결과를 grep의 입력으로 받을 수 있다.
위 쉘 명령의 결과는 .java 파일에서 파일명이 cmd인것을 찾는다.
결과: 현재 디렉토리 하위에 있는 자바 파일에서 svcCode 라는 단어를 찾아서, 해당 파일의 이름과 단어가 있는 라인을 출력한다.
-exec는 find 결과를 grep의 입력으로 넣는다. 이때 {} 표시가 현재 찾은 파일을 뜻한다.
마지막에 세미콜론은 쉘명령의 끝을 알리고, 세미콜론이 특수문자이기 때문에 앞에 역슬래시가 붙는다.
-R: 디렉토리 재귀 탐색
-H: 파일이름 출력
-n: svcCode가 있는 라인 수 출력(-H 기능을 포함한다)
-l: 파일이름만 출력
find . -name '*.java' | grep -i cmd
-exec 옵션과 별개로 파이프(|) 명령어는 find의 결과를 grep의 입력으로 받을 수 있다.
위 쉘 명령의 결과는 .java 파일에서 파일명이 cmd인것을 찾는다.