그래서 제목에 나온 세 가지 아이디어의 차이점을 이해합니다.
atime -- 액세스 시간 = 파일이 마지막으로 열린 시간
mtime -- 수정 시간 = 파일 내용이 마지막으로 수정된 시간
ctime -- 변경 시간 = 파일 inode가 마지막으로 수정된 시간
그래서 아마도 내가 다음과 같은 것을 입력할 때
find ~/Documents -name '*.py' -type f -mtime 14
지난 2주 동안 수정되었으며 .py로 끝나는 일치하는 모든 파일을 찾습니다. 아무것도 표시되지 않습니다...
그래서 난 노력해
find ~/Documents -name '*.py' -type f -atime 1400
지난 1400일 동안 열린 모든 항목(.py로 끝나고 유형 파일이 있음)과 일치해야 하지만 여전히 아무것도 없습니다.
제가 문서를 잘못 이해한 걸까요? 예를 들어, 이것은 1400일을 의미합니까?
관련 게시물:
답변1
네, -mtime 14
정확히 14를 의미합니다. GNU 매뉴얼("TESTS" 레이블이 붙음)에서 이 섹션의 상단을 참조하세요 find
. 여기서 "숫자 인수는 [...]으로 지정할 수 있습니다"라고 되어 있습니다.
Numeric arguments can be specified as
+n for greater than n,
-n for less than n,
n for exactly n.
"보다 작다"는 "보다 작다"를 의미합니다.엄격하게미만"은 -mtime -14
"마지막 수정 시간이 현재 시간, 13일 이하"를 의미하며, -mtime +14
이는 "마지막 수정 시간이 현재 시간, 15일 이하"를 의미합니다.
답변2
find ~/Documents -name "*.py" -type f -mtime 14
- 정확히 14일 전
find ~/Documents -name "*.py" -type f -mtime +14
- 14일 이상 전
find ~/Documents -name "*.py" -type f -mtime -14
- 14일 이내
나머지 말씀은 맞는 것 같습니다.
답변3
이러한 -*time 문은 다음 알고리즘을 충족하는 파일을 반환합니다(여기서시간파일이 수정된 시간입니다):
~을 위한
찾기 시간N
int(hours/24) == n
찾기 시간-N
int(hours/24) < n
찾기 시간+n
int(hours/24) > n
예를 들어 -mtime 1을 찾으세요.
24~47시간 된 파일과 일치합니다.
찾기 시간 +0
24시간 이상 된 파일과 일치합니다.