Поиск файлов по дате и времени в консоли при помощи find
Обратились разработчики с просьбой удалить в указанном каталоге все файлы, которые были изменены в указанном диапазоне времени. При помощи find
это делается элементарно, но про такую его способность многие и не догадываются, прибегая в подобных случаях к разным кривым решениям. Итак, выводим все файлы, модифицированные в указанном промежутке времени (с параметром -ls
для большей наглядности):
find /path/to/dir/ -mindepth 1 \
-newermt '2013-01-24 11:35' \
! -newermt '2013-01-24 12:17' \
-ls
Как видно, задание обоих границ диапазона выполняется параметром -newermt
, который задаёт сравнение времени модификации с указанным в кавычках временем. В man find
вы не найдёте упоминания newermt
, искать необходимо newerXY
– это очень полезный параметр, когда речь заходит о поиске файлов по дате.