Я хочу запускать cronjob каждую минуту, чтобы обнаружить все файлы, которые были изменены в последнюю минуту в определенном каталоге (около 300 000 inodes) и экспортировать этот список файлов в csv.Cronjob для обнаружения последних измененных файлов
Возможно ли выполнить оптимизированную команду для этого? Я не могу запустить «найти» с флажком сортировки в этом каталоге, потому что он огромен, и, вероятно, потребуется больше 1 минуты для запуска всех файлов.
Есть ли какая-нибудь команда, которую я могу сделать? Или запустить какую-либо специальную программу на фоне сервера, который регистрирует каждый измененный файл по мере его изменения? Если для этого есть команда, использующая PHP, я в порядке, я могу создать cron для выполнения скрипта PHP, без проблем.
Если find не работает, возможно, IO является узким местом, поэтому это не имеет значения, если вы используете «find» или какой-либо другой метод для определения времени mtime файлов. Сосредоточьтесь на методе улучшения вашего ввода-вывода. – Ctx
Что пишут файлы? Можно ли это сделать? – Martin
Используйте 'incrontab'. Он работает как обычный 'crontab', за исключением событий файла (например, изменение): http://manpages.ubuntu.com/manpages/intrepid/man5/incrontab.5.html –