Показать последние измененные / созданные файлы с помощью терминала

Есть ли какая-нибудь команда для отображения недавно измененных / созданных файлов?

Какая ...?

17
задан 07.05.2020, 12:23

3 ответа

ls -t

Это позволит отсортировать список файлов по времени модификации

0
ответ дан 07.05.2020, 12:23

Проверьте команду stat:

Использование:

stat [options] filename ... ...

, например

stat /home/user/Docs/filename.txt

Для поиска файлов используйте команды find:

, например

find /to/target/directory* -mtime -1

(переключатель -mtime n показывает файлы с данными, которые были изменены в последний раз n * 24 часа назад, для -mtime -1 будут показаны файлы, возраст которых равен 1 дню)

find /to/target/directory* -mmin 30

покажет измененные файлы за последние 30 минут.

Проверьте дополнительные параметры в разделе ТЕСТЫ на страницах справочника (используйте man find в терминале). Вы можете использовать другие переключатели, такие как -amin n (последний раз обращался n минут назад), -cmin (последний раз статус файла изменялся n минут назад) и другие.

0
ответ дан 07.05.2020, 12:24
  • 1
    Автор вопроса хочет видеть список недавно измененных файлов. stat выделяет свойства определенного файла или каталога (как то, когда он был изменен в прошлый раз). Поэтому эта команда не подходит для этого вопроса. – ebigeon 07.05.2020, 12:24
  • 2
    stat filename где имя файла могло быть Вашим target' s полный или относительный путь. Это покажет доступ, модификацию, времена изменения среди других выводов.. – A.R 07.05.2020, 12:25
  • 3
    stat также даст Вам file' рождение s время, если поддержки файловой системы это.. – Darshan Rivka Whittle 07.05.2020, 12:25
  • 4
    Возможно, Вы могли рассмотреть или удаление части статистики из Вашего ответа или предоставление определенной команды. – user5290853 07.05.2020, 12:26
  • 5
    .. it' s связанный, isn' t это? Это показывает Вам метки времени.. и что OP want' s является практической реализацией того же.. – Paul Rooney 07.05.2020, 12:26

Просто нажмите Ctrl + Alt + T на клавиатуре, чтобы открыть терминал. Когда он откроется, выполните команду (ы) ниже:

find ${1} -type f | xargs stat --format '%Y :%y %n' 2>/dev/null | sort -nr | cut -d: -f2-

См. Найти команду

Источник: Linux

0
ответ дан 07.05.2020, 12:25
  • 1
    Команда корректна. Вы попробовали его? – Leo 07.05.2020, 12:25
  • 2
    @Mitch, как определить для нахождения файлов за прошлые 2 дня? – k3lly.dev 07.05.2020, 12:26
  • 3
    Можно использовать -iname. Например, найдите *.txt файл, но проигнорируйте скрытый .txt файл, такой как .vimrc, Вы были бы -type f \( -iname "*.txt" ! -iname ".*" \). – Mr. Polywhirl 07.05.2020, 12:26
  • 4
    Да, it' s корректный, это просто занимает время. Я думал, что-f2-будет неправильным потому что команды don' t обычно заканчиваются - – Nelson McCullough 07.05.2020, 12:26
  • 5
    Хороший! Что относительно того, чтобы игнорировать скрытые файлы? – Leo 07.05.2020, 12:27

Теги

Похожие вопросы