리눅스에서 변경된 파일이나 디렉토리를 찾을 때 날짜나 시간을 기준으로 이 후에 변경된 것들을 찾는 방법에 대하여 알아봅니다. 어떻게 하면 원하는 날짜 이후의 파일이나 디렉토리를 찾을 수 있을까요?


! 날짜 기준 파일 찾기는 언제 왜 필요한가?가장 먼저 서버에 문제가 생겼을 경우 어떤 파일을 수정해서 문제가 생겼는지도 확인해야 할 수 있겠습니다. 설정 파일을 수정하거나 아니면 서버의 특정 파일을 수정해서 에러가 발생했을 수도 있기 때문에 문제가 발생한 시점
 이 후의 변경사항을 체크해야 하죠.



# 리눅스 특정일 기준 변경 및 추가된 파일, 디렉토리 찾는 방법만약 2019-03-14일 이 후에 변경된... 즉 새로 생성되거나 업데이트 된 파일 디렉토리를 찾는다면? 이 경우에 아래와 같이 입력하면 설정된 날짜 이 후에 파일을 찾을 수 있습니다.
find -type f -newermt '2019-03-14'

여기서 -type은 파일 또는 디렉토리를 의미합니다.
-type f | d

이처럼 원하는 타입으로 파일이나 디렉토리 값을 선택할 수 있습니다. 만약 디렉토리과 파일 모두 확인할 경우에는 -type을 사용하지 않으면 됩니다.
find -newermt '2019-03-14'

참고) newer + m < - m은 modified를 의미함

위와 같이 입력 후 실행하면 날짜 이 후의 모든 파일 디렉토리를 리스트로 출력합니다.



# 디렉토리 depth 설정하기, 하위 level 선택
만약 하위 몇 단계 까지의 변경 내역만 출력할 것인지 선택할 경우 maxdepth를 사용합니다. 만약 하위 2단계의 디렉토리 구조만 출력한다면 아래와 같습니다.
find . -maxdepth 2 -newermt "2019-03-14"

만약 아래와 같은 구조인 경우 maxdepth를 2로 설정하면 어떻게 나타날까요?
/
/test/
/test/abc/
/test2/def/ghi/
/test3/jkl/mno/pqr/

실행하면 /test/abc/까지의 변경 내역들만 날짜 기준으로 보여주게 됩니다.



# 오늘 날짜를 기준으로 변경 내역 출력하기만약 오늘을 기준으로 한 달, 30일의 변경 내역사항만 확인한다면 아래와 같이 입력합니다.
@ 30 Days ago
find -type f -mtime -30

가장 빠르면서 간편한 방법입니다.

여기까지 linux 환경에서 변경된 파일 및 디렉토리 찾는 방법을 알아보았습니다.