상세 컨텐츠

본문 제목

find 명령으로 특정 날자 시간 이후 수정 또는 생성 된 파일 찾기 date find

IT : Ubuntu

by 휀스 2015. 3. 28. 00:04

본문

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 명령으로 특정 날자 시간 이후 수정 또는 생성 된 파일 찾기에 대한 글 이였습니다.

관련글 더보기