🐧 Проверка времени доступа и изменения файлов в системах Linux

Мануал

Цель этого руководства – показать несколько методов командной строки, которые можно использовать для проверки времени доступа и модификации файлов в системе Linux.

В примерах, показанных ниже мы рассмотрим несколько инструментов для этой работы, таких как ls, date, stat и find.

В командной строке Linux есть несколько инструментов, которые мы можем использовать для проверки времени доступа и модификации файлов.

Нет необходимости устанавливать какие-либо дополнительные инструменты.

Дополнение статьи:

🐧 Как узнать дату последнего изменения файла на Linux

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

Команда Linux stat покажет нам время доступа, время модификации и время изменения файла.

Просто укажите в команде путь к файлу.

$ stat example.txt

Вывод будет выглядеть примерно так.

Выделенные жирным шрифтом строки содержат необходимую информацию.

  File: example.txt
  Size: 13367     	Blocks: 32         IO Block: 4096   regular file
Device: 805h/2053d	Inode: 787524      Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2021-12-15 22:28:53.480000095 -0500
Modify: 2021-12-15 22:28:53.480000095 -0500
Change: 2022-02-20 19:48:33.288001148 -0500
 Birth: -

Обратите внимание, что поле Birth (последняя строка) не поддерживается в файловых системах EXT.

Еще один инструмент, который мы можем использовать для работы, – это команда ls.

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

Вам нужно будет добавить опцию -l к команде, чтобы увидеть время модификации.

$ ls -l example.txt
-rw------- 1 root root 13367 Dec 15 22:28 example.txt

Чтобы посмотреть время доступа к файлу с помощью ls, добавьте в команду опцию -u.

$ ls -u example.txt
-rw------- 1 root root 13367 Dec 15 22:28 example.txt

В этом случае наше время доступа совпадает со временем изменения файла, что является нормальным для файлов, к которым не обращались с момента их последнего сохранения.

Еще одним инструментом, который мы можем использовать, является команда date.

Нет необходимости указывать какие-либо дополнительные опции, поскольку измененное время будет выведено в очень удобном для восприятия формате, но в следующем примере мы покажем, почему вы можете захотеть использовать дополнительные опции.

$ date -r example.txt
Wed 15 Dec 2021 10:28:53 PM EST

Команда find пригодится, если нам нужно просмотреть все файлы, содержащие определенное время модификации.

Например, эта команда отобразит все файлы, которые были изменены за последние семь дней.

$ find . -mtime -7

Или файлы, измененные в течение последнего часа:

$ find . -mmin 60

Команду find можно также использовать для поиска файлов с определенным временем доступа.

Например, эта команда будет искать файлы, доступ к которым был получен в течение последних 20 минут.

$ find ~ -amin 20

Или мы можем искать файлы со временем доступа позже, чем 20 минут назад, заменив его на знак плюс.

$ find ~ +amin 20

Заключение

В этом руководстве мы рассмотрели, как проверить время доступа и модификации файла в Linux.

Есть несколько инструментов, которые могут выполнить эту работу, но у каждого из них есть свои плюсы и минусы, в зависимости от того, что именно вы хотите сделать.

Команда stat предоставляет нам всю необходимую информацию, но ls, вероятно, является командой, которую вы привыкли использовать каждый день.

С другой стороны, команда date может лучше работать в скриптах Bash или в ситуациях, когда вам нужно, чтобы выходные данные были отформатированы определенным образом.

Наконец, команда find лучше всего работает при поиске файлов в определенном диапазоне дат изменения или доступа.

 

Добавить комментарий