Linux find명령어 Timestamp 옵션 정리

리눅스 시스템에서 find 명령어는 파일을 검색하고 조건에 따라 동작할 때 사용되는 강력한 도구이다. Timestamp(타임스탬프)는 파일의 생성 시간, 수정 시간, 액세스 시간과 관련된 정보로, find 명령어에서는 이러한 타임스탬프 정보를 기반으로 파일을 검색할 수 있는 다양한 옵션을 제공한다. 이 글에서는 find 명령어의 Timestamp 옵션을 상세히 살펴보고자 한다.

Timestamp 옵션

다음은 find 명령어에서 사용할 수 있는 Timestamp 옵션이다.

옵션설명
-mmin파일의 데이터가 마지막으로 수정 된 시간 (분 지정)
-mtime파일의 데이터가 마지막으로 수정 된 날짜와 시간 (일 지정)
-amin파일의 데이터에 마지막으로 액세스 한 시간 (분 지정)
-atime파일의 데이터에 마지막으로 액세스 한 날짜와 시간 (일 지정)
-cmin파일 데이터 및 상태가 마지막으로 수정 된 시간 (분 지정)
-ctime파일 데이터 및 상태가 마지막으로 수정 된 날짜와 시간 (일 지정)

시간 지정 개념 정리

각 옵션에 따른 분 또는 일수를 지정하는데, 부호를 사용할 수 있다. 부호를 사용할 때 그 의미를 제대로 알고 사용해야 하는데, 좀 복잡해 보일 수 있다. 정리한다면 다음과 같이 정리할 수 있다.

음수(-) 사용

find -mtime -3

현재로 부터 3일(3 * 24) 이전 까지를 지정한다. 오늘이 10일이라면 7일 ~ 10일까지를 의미한다.

부호 없이 사용

find -mtime 3

현재로 부터 3일 이전 일수를 지정하는 것으로 -mtime -3 보다 하루 전을 의미한다.

양수(+) 사용

find -mtime +3

-mtime 3 보다 이전을 의미한다.

시간 범위 정리

+부호가 붙었을 때 혼동하기 쉬운데, 만약 +4라고 하면, 4일 전이라고 생각하기 쉬운데, 4일전 당일 그 이전이기 때문에 5일전이된다. +4와 0 사이의 시간 범위를 정리하면 다음과 같다.

Timestamp 옵션 사용 예제

액세스 시간이 7일 이내인 파일 검색

find . -atime -7

최근 3일 동안 변경된 파일 검색

find /etc -ctime -3

10일 이전에 수정된 파일 검색

find /tmp -mtime +10

논리 연산자 활용

find 명령어는 여러 타임스탬프 옵션을 조합하여 논리적인 검색을 수행할 수 있다.

최근 7일 이내에 수정되고 3일 이내에 액세스된 파일 검색

find /opt -mtime -7 -atime -3

정리 및 주의사항

  • Timestamp는 파일의 메타데이터 중 하나로, 파일의 상태 변경, 수정, 액세스 등과 관련이 있다.
  • find 명령어에서 사용하는 -atime, -ctime, -mtime는 24시간 단위로 계산된다.
  • 날짜와 시간은 상대적인 값 또는 구체적인 날짜 및 시간 포맷으로 지정할 수 있다.

참고 사이트

답글 남기기