Поиск недавно измененных файлов в Linux - "Find"
Поиск недавно изменённых файлов, с фильтром по времени редактирования, в каталоге Linux и исключение не интересующего нас подкаталога. Также добавим вывод в текстовый файл.
Команда
Например мы хотим посмотреть какие файлы были изменены за последние сутки назад и вывести их в виде списка, в файл. Для поиска воспользуемся утилитой find. В консоли вводим следующую команду:
find /var/www/example.com/ -path /var/www/example.com/logs -prune -o -type f -mtime -1 >> out.txt
Разбор команды
- find /var/www/example.com/ - в этой части мы указываем каталог в котором хотим произвести поиск. Для примера я взял каталог сайта example.com;
- -path /var/www/example.com/logs -prune -o - это часть, исключение из поиска каталога /var/www/example.com/logs, например мы не хотим вывести в итоговом списке часто меняющиеся файлы, в данном случае файлы журнала;
- -type f - указываем тип - файл;
- -mtime -1 - поиск по времени модификации, -1 означает изменения в течении одного полного дня, назад, от текущей даты;
- >> out.txt - перенаправление вывода find в текстовый файл в текущем каталоге.
Заключение
В итоге после выполнения команды мы получаем файл out.txt. Он будет находится в том каталоге откуда был запущен, стандартно это /root. Внутри файла будет список файлов которые модифицировались в течении суток назад или иного, которое было указано.