Как получить список последних 5 измененных файлов рекурсивно

find . -type f -printf '%T@ %TY-%Tm-%Td %TH:%TM:%.2TS %p\n' | sort -nr | head -n 5 | cut -f2- -d" "


Команда find перебирает все файлы в текущем каталоге и его подкаталогах. Опция -type f указывает, что нужно искать только файлы, а не каталоги или символические ссылки. Опция -printf определяет формат вывода для каждого найденного файла. В данном случае, это время последнего изменения и полный путь к файлу.

Результат выполнения команды передается в команду sort, которая сортирует строки в обратном порядке (-r), используя числовое сравнение (-n) ключа, содержащего время последнего изменения.

Полученный отсортированный список передается в команду head, которая выбирает первые пять строк (-n 5).

Затем, результат передается в команду cut, которая обрезает каждую строку, оставляя только полный путь к файлу (-f2- -d» «).

Эта команда полезна для получения списка последних измененных файлов, который может быть использован, например, для отслеживания активности или обновлений файлов.

Альтернативой может быть использование команды ls с опцией -lt, которая сортирует файлы по времени последнего изменения в обратном порядке. Однако, команда find более гибкая и может использоваться для поиска файлов по различным критериям.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *