[OS&기타-Linux] 리눅스 find / 파인드 응용

Posted by nkjok
2024. 3. 28. 09:43 OS&기타/Linux
반응형

find / 파인드 응용 



1

find / -size +10M -exec ls -lh {} \;

/ 경로에서 10M 이상인 파일 출력



2

find . -empty

현위치에서

find / -empty

/ 경로에서 빈파일 찾기



​3​

find /etc -maxdepth 2 -name 'x*'

-maxdepth 옵션으로 서브 디렉토리 검색 깊이를 지정한다.



4

find . -newer game.py

-newer 옵션 뒤에 적힌 파일보다 최근에 변경된 파일을 검색한다.​



5

find /var -name "ex*" 2>/dev/null​

퍼미션 디나인 된거 제거해줌

find: ‘/var/spool/postfix/trace’: Permission denied​

​​

6  bak 파일을 찾아내서 삭제

find / -type f -name "*".bak"*" -exec rm -rf {} \;





ex) 현재 디렉토리 하위에서 확장자가 "txt" 인 파일 모두 삭제

[root@peterdev test]# find . -type f -name "*.txt" -exec rm {} \;

 

ex) 현재 디렉토리 하위에서 확장자가 "test"로 시작하는 모든 파일 삭제

[root@peterdev test]# find . -type f -name "test*" -exec rm {} \;

 

 

ex) 현재 디렉토리 하위에서 생성된지 30일 이상 된 파일만 삭제

[root@peterdev test]# find . -ctime +30 -type f -exec rm {} \;


 

 

ex) 현재 디렉토리 하위에서 크기가 500 kbyte 이상인 파일만 출력

[root@peterdev test]# find . -size +500k -type f -exec rm {} \;


 ​







- 아래는 작동안함

(참고해서 재설계필요함)







파일 생성 날짜가 3일이 지난 파일을 삭제하는 명령어


find ./ -ctime +2 -exec rm {} \ ;


find /home -name '*.txt' -ctime +2 -exec rm {} \;


*  일정기간 지난 파일 삭제 명령 - 1일 지난 파일 삭제 예 

find [디렉토리] -ctime +0 -exec rm -f {} \;


*  일정기간 지난 파일 삭제 명령 - 7일 지난 파일 삭제 예 

find [디렉토리] -ctime +7 -exec rm -f {} \;


* 수정한지 3일 이내 ( -mtime -3 ) 의 파일만 ( 백업할 때 유용 )

find . -mtime -3 -type f -ls


* 수정한지 30분 이내 ( -mmin -30 ) 의 파일만

find . -mmin -30 -type -f -ls

 

* 특정용량 이상되는 파일 찾기 - 10MB 이상 되는 파일 찾기 예

find [디렉토리] -size +1000k -exec ls -al {} \;


*  생산된지 30일 이상 된 파일만 삭제

find [디렉토리] -type f -ctime +30 -exec rm -rf {} \;


*  생산된지 30일 이상 된 비어있는 디렉토리만 삭제

find [디렉토리] -empty -type d -ctime +30 -exec rmdir {} \;


* 파일크기가 300KB 이상 ( -size +300k ) 인 파일만 (호스팅 되는 홈피내에 큰 사이트의 파일이 있는지 찾을 때 유용)

find . -size +300k -ls


* 파일크기가 500bytes 이하 ( -size -500c )인 파일만

find . -size -500c -ls


* 수정한지 20일 이상 ( -mtime +20 ) 된 파일과 디렉토리

find . -mtime +20 -ls


* 수정한지 20일 이상된 파일만

find . -mtime +20 -type f -ls


* 수정한지 20일 이상된 파일만 삭제 ( -exec rm {} \; ) ( 정기적으로 20일지 지난 파일을 삭제할 때 유용 )

find . -mtime +20 -type f -ls -exec rm {} \;

반응형