X일보다 오래된 파일 삭제 - mtime, ctime 및 atime이 작동하지 않음

X일보다 오래된 파일 삭제 - mtime, ctime 및 atime이 작동하지 않음

x일이 지난 특정 폴더의 파일을 삭제하는 스크립트를 Synology(NAS)에서 실행하고 있습니다.

문제는 폴더에 업로드된 지 X일 후에 파일을 삭제하고 싶다는 것입니다.

그래서 ctime, mtime 또는 atime을 사용하려고 생각했지만 문제는 이것이 파일 변경 시간, 파일 수정 시간 또는 파일 액세스 시간을 기반으로 한다는 것입니다. 내가 Synology에 업로드하는 파일은 Windows에서 수정된 파일 시간(때로는 아주 오래된 시간)을 "가져오기" 때문에 액세스 시간이나 수정 시간이 작동하지 않습니다.

누구든지 해결책을 알고 있습니까?

답변1

파일 타임스탬프를 사용할 수 없으므로 다른 방법을 사용해야 합니다. 일반적인 대안은 다음과 같습니다.

  • 명명 규칙을 사용합니다(파일 또는 디렉터리 이름에 타임스탬프 포함).
  • 타임스탬프를 동일한 디렉터리의 숨김 파일(도트 파일) 등 관련 파일에 저장하고, 스크립트를 통해 확인 가능
  • 파일 업로드 날짜의 데이터베이스를 유지하고 이를 사용하여 파일 만료 시기를 제어합니다.

관련 정보