본문 바로가기

리눅스/명령어

find 명령어

728x90
반응형

find 명령어

find 명령어는 리눅스에서 파일을 검색할 때 가장 자주 사용되는 명령어 중 하나입니다. 특정 폴더에서 파일을 검색하고, 이름, 크기, 변경 날짜 등 다양한 조건으로 검색할 수 있습니다.

find 명령어 구문

find [검색할 디렉토리] [옵션] [조건]

find 명령어 옵션

find 명령어는 검색 대상 디렉토리와 함께 다양한 옵션을 사용할 수 있습니다.

옵션 설명
-name 파일 이름으로 검색
-type 파일 타입으로 검색 (f: 일반 파일, d: 디렉토리, l: 심볼릭 링크)
-size 파일 크기로 검색
-mtime 파일 수정 시간으로 검색
-exec 검색 결과에 대해 명령어 실행

find 명령어 예시

파일 이름으로 검색

find /home -name "file.txt"

/home 디렉토리에서 file.txt 파일 이름을 가진 파일을 검색합니다.

파일 타입으로 검색

find /home -size +10M

/home 디렉토리에서 10MB 이상 크기의 파일을 검색합니다.

특정 확장자 파일 검색

find /var/log -name "*.log"

/var/log 디렉토리 아래 모든 .log 확장자 파일을 검색합니다.

수정된 지 일정 기간이 지난 파일 검색

find /var/log -type f -mtime +30

/var/log 디렉토리 아래 모든 파일 중 30일 이상 수정되지 않은 파일들을 검색합니다.

수정된 지 일정 기간이 지난 파일 삭제

find /var/log -type f -mtime +30 -exec rm {} \;

/var/log 디렉토리 아래 모든 파일 중 30일 이상 수정되지 않은 파일들을 삭제합니다.

파일 수정 시간으로 검색

find /home -mtime +7

/home 디렉토리에서 7일 이전에 수정된 파일을 검색합니다.

검색 결과에 대해 명령어 실행

find /home -name "*.log" -exec rm {} \;

/home 디렉토리에서 .log 확장자를 가진 파일을 검색하고, 검색 결과에 대해 rm 명령어를 실행하여 파일을 삭제합니다.

 

참고사항

  • find 명령어를 사용할 때 검색 대상 디렉토리의 권한 설정에 주의해야 합니다.
  • 검색할 디렉토리가 매우 큰 경우에는 검색 시간이 오래 걸릴 수 있습니다. 따라서 가능한 검색 대상을 좁게 설정해야 합니다.

 

 

728x90
반응형