find 명령으로 특정 날자 시간 이후 수정 또는 생성 된 파일을 찾을 때 사용하는 방법에는 두가지가 있습니다.
첫째 -atime 옵션을 사용하는 것과 두번째 -newer 옵션을 사용하는 것 입니다.
특정 기간 사이의 파일을 찾기 위해서는 -newer option 을 사용하는 것이 더 직관적이라 보여 이 방법을 사용하도록 하겠습니다.
특정 날자 이후 생성된 파일 찾기
$ find ./foldername -type f -newerct 2015-03-01
특정 날자 이전에 생성된 파일 찾기
$ find ./foldername -type f ! -newerct 2015-03-01
이 두가지를 모아 일정 기간내에 생성된 파일을 찾을 수 있습니다.
$ find ./foldername -type f -newerct 2015-01-01 ! -newerct 2015-03-01
이렇게 검색하는 것 이외에도 find 명령은 몇일 전 수정된 파일을 찾는 것도 가능합니다.
수정한지 몇일이 지난 파일 찾기 (30일 지난)
$ find ./foldername -type f -mtime +30
수정한지 몇일째 되는 파일 찾기 (30일 째)
$ find ./foldername -type f -mtime 30
수정한지 몇일이 안되는 파일 찾기 (30일 안되는)
$ find ./foldername -type f -mtime -30
수정한지 몇분이 지난 파일 찾기 (30분 지난)
$ find ./foldername -type f -mmin +30
수정한지 몇분째 되는 파일 찾기 (30분 째)
$ find ./foldername -type f -mmin 30
수정한지 몇분이 안되는 파일 찾기 (30분 안되는)
$ find ./foldername -type f -mmin -30
이를 이용해서 -exec 옵션이나 | pipe 를 함께 사용하여 여러가지 일을 할 수 있습니다.
예를 들자면
일정 시간내에 생성된 파일들을 삭제한다.
$ find ./foldername -type f -newerct 2015-01-01 ! -newerct 2015-03-01 -exec rm -rf {} \;
특정 시간대에 생성된 파일들을 압축한다.
$ find ./foldername -type f -newerct 2015-01-01 ! -newerct 2015-03-01 | xargs tar -cjvf oldfiles.gz
여기에 사용되는 옵션은 아래와 같습니다.
-atime : access time
-ctime : changed time
-mtime : modified time
-newerct : create time
-newermt : modified time
-newerat : access time
리눅스 계열 OS 들은 정말 알면 알수록 많은 일을 할 수 있도록 해주네요.
이상 find 명령으로 특정 날자 시간 이후 수정 또는 생성 된 파일 찾기에 대한 글 이였습니다.
Ubuntu squirrel mail user 추가 및 그룹메일 설정 (group mail setting) (0) | 2015.08.20 |
---|---|
크롬 브라우저 (Chrome browser) 에서 안드로이드 앱(android app) 실행하는 방법 (0) | 2015.04.15 |
Shell script 실행시 script 내부에서 python return 값 받기 (0) | 2015.03.23 |
samba folder 공유를 위해 /etc/fstab 수정 후 바로 mount 하는 방법 (0) | 2015.03.20 |
여러 terminal 의 shell history 모두 저장하기 (0) | 2015.03.19 |