find 와 egrep 같이 검색하기
find 와 egrep 같이 검색하기
find [검색 디렉터리(. 현재 디렉토리)] [검색문자열]
[ 옵션 ]
-name : '문자열' 파일명 검색
-user : 소유자 파일 검색
-type : 유형 검색
-type d : 디렉터리
-type f : 일반파일
-type l : 링크파일
-type b : 블록파일
-perm : 권한 관련 파일이나 디렉토리 검색
-ok : 파일 검색 결과 확인 메시지를 출력 명령실행시 y/n를 입력받음
-print : 검색결과를 화면으로 출력받을 때 사용
-fprint : 출력 결과를 파일로 저장할 때 사용
-iname : 대소문자 구별하지 않고 검색
-atime day : 일 이전에 접근한 파일 검색
atime n n : 일 이전에 엑세스한 파일 검색
ctime n n : 일 이전에 변경된 파일 검색
mtime n n : 일 이전에 수정된 파일 검색
egrep [옵션] [검색문자열]
[ 옵션 ]
-c : 문자열이 있는 라인의 수를 출력
-n : 문자열이 있는 라인을 라인 번호와 함께 출력
-i : 대소문자를 구분하지 않고 탐색
-l : 문자열을 포함한 파일명을 출력
-r : 서브 디렉토리의 파일까지 출력
-v : 문자열을 제회한 다른 라인을 모두 출력
-w : 패턴이 전체 줄과 일치하는 라인만 출력(단어로써 일치하면 출력)
-x : 패턴이 전체 줄과 일치하는 라인만 출력(완전히 일치하면 출력)
-a : 바이너리를 텍스트처럼 탐색 가능하게 한다.
-A [숫자] : 문자열을 찾은 뒤 이후 라인을 숫자 만큼출력
-B [숫자] : 문자열을 찾은 뒤 이전 라인을 숫자 만큼출력
-C [숫자] : 문자열을 찾은 뒤 앞뒤의 라인을 숫자 만큼출력
현재폴더에서 server.를 포함한 모든 파일에서 같은 라인에 [1111], [REQ], TraceId=1111가 들어간 라인을 검색
find . -type f -name 'server.*' | xargs egrep "\[1111\]" | egrep "\[REQ\]" | egrep "TraceId=1111" --color