2011년 12월 22일부터 2011년 12월 24일 사이에 변경된 모든 파일을 재귀적으로 나열하는 방법은 무엇입니까?
답변1
Gilles의 솔루션을 사용하고 읽은 후발견한 남자 (1)다시 한번 더 간단한 해결책을 찾았습니다. 가장 좋은 옵션은 -newerXY입니다. m 및 t 플래그를 사용할 수 있습니다.
m The modification time of the file reference
t reference is interpreted directly as a time
그래서 해결책은
find . -type f -newermt 20111222 \! -newermt 20111225
하한포함 상한포함이라 1일 추가했어요! 그리고 그것은 재귀적입니다. find v4.5.9에서는 잘 작동합니다.
답변2
일반적으로 디렉터리와 해당 하위 디렉터리에서 파일을 반복적으로 찾을 때 find
.
날짜 범위를 지정하는 가장 간단한 방법 find
은 범위 경계에서 파일을 만들고 조건자를 사용하는 것입니다 -newer
.
touch -t 201112220000 start
touch -t 201112240000 stop
find . -newer start \! -newer stop
답변3
이미 제공된 답변 외에도 날짜를 직접 지정할 수 있습니다.
find -type f -newermt "2011-12-22" \! -newermt "2011-12-24"
또는
find -type f -newermt "2011-12-22 00:00:00" \! -newermt "2011-12-24 13:23:00"
시간도 지정하고 싶다면.
답변4
find
날짜 시간은 ISO 형식일 수 있으므로 UTC 서버의 경우 현재 위치에서 시간 단위로 오프셋을 지정할 수 있습니다. 이는 또한 시간을 비교하기 때문에 하루를 추가해야 하는 문제를 해결합니다.
find -type f -newermt 20111224T0800 \! -newermt 20111225T0800