find 명령어는 Unix 시스템에서 사용할 수 있는 쉘명령어 입니다.

Unix/LInux 또는 맥킨토시에서 사용할 수 있습니다. bash shell(/bin/bash)

$ bash --help
GNU bash, version 4.4.23(1)-release-(x86_64-pc-msys)
Usage:  bash [GNU long option] [option] ...
        bash [GNU long option] [option] script-file ...

find명령어 실제 사용 방법을 알아보자.  

$ find .  : 현재 폴더와 하위 폴더 모든 정보를 출력한다. 콤마를 한 칸 띄고 적는다.

$ find . -name "*.pdf"  : 명령어 입력하는 폴더를 기준으로 하위 폴더 포함하여 검색한다. pdf 확장자 파일을 찾는다.

$ find . -name "*.pdf"  > pdfOut.txt : 검색 결과를 문서파일로 저장한다. 문서파일에 그대로 검색 결과를 저장한다.

$ find . | grep text.txt : 파이프'|'는 키보드 엔터키 위에 있다. 결과를 넘겨준다. 

$ find . -name "*.txt" | xargs grep "Hello" | less : 문서에서 "Hello"를 찾는다. 한 화면씩 보여준다.

$ find . -name "*.txt" -exec rm {} \;    : 검색한 결과 파일을 지운다. 조심해야하지요.

$ find . -maxdepth 2 -name '*.txt'  : 폴더 깊이를 2단계로 제한하여 검색한다.

find 명령어 정말 다양하게 사용가능합니다.

$ find . -name '*good*' : 파일 이름에 위치 상관없이 good 표기한 파일 검색

$ find . -name "test*" -type d : 디렉토리를 찾으려면 -type d 를 이용한다.

$ sudo find / -size +10M -exec ls -lh {} \;     : 용량을 지정해줄 수 있다. sudo로 권한문제해결.

$ find / -name "test*" 2>/dev/null :  권한 오류를 회피할 수 있다.

$ find . -empty : 빈파일을 찾는다.

$ find . -name "* *" -exec rm -f {} \;    : 공백이 있는 파일들 지웁니다. "* *" 공백을 의미하죠.

 

 

find(1) — Linux manual page

 

Posted by 뭔가느낌이
,