Сенсорная команда Linux

Сенсорная команда Linux

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

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

Временные метки файлов Linux

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

Файл в Linux имеет три временные метки:

  • atime (время доступа) — время последнего доступа к файлу/открытия файла какой-либо командой или приложением, например cat , vim или grep .
  • mtime (время изменения) — время последнего изменения содержимого файла.
  • ctime (время изменения) — время последнего изменения атрибута или содержимого файла. Атрибут включает разрешения файла, владельца файла или местоположение файла.

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

 stat file_name

Для создания нового файла требуются права на запись в родительском каталоге. В противном случае вы получите ошибку «Отказано в доступе».

Как использовать сенсорную команду

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

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

Например, если файл file1 не существует, следующая команда создаст его, в противном случае она изменит его временные метки:

 touch file1

Чтобы создать или изменить несколько файлов одновременно, укажите имена файлов в качестве аргументов:

 touch file1 file2 file3

Если вы не хотите, чтобы команда touch создавала новые файлы, используйте опцию -c ( --no-create ).

Например, если файл file1 существует, то следующая команда изменит временные метки файла, в противном случае она ничего не сделает:

 touch -c file1

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

По умолчанию, если ни один параметр не указан, touch обновит время последнего доступа и изменения файла на текущее время. Используя параметры -a и -m , можно изменить только одну из этих временных меток.

Изменить только время доступа

Используйте опцию -a , чтобы изменить только время доступа к файлу:

 touch -a file1

Измените только время изменения

Используйте опцию -m , чтобы изменить время изменения файла:

 touch -m file1

При изменении времени изменения время изменения также будет обновлено.

Установка определенных временных меток

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

Используйте опцию -d ( --date= ), чтобы указать строку даты и использовать ее вместо текущего времени.

Например, чтобы изменить время последнего доступа и изменения file1 на 1 июня 2018 г. 11:02, используйте следующую команду:

 touch -d '1 June 2018 11:02' file1

Строку даты необходимо заключить в одинарные кавычки.

Вы также можете указать в команде touch часть строки даты и времени. Если указать только дату, год автоматически изменится на текущий:

 touch -d '12 June' file1

Используйте опцию -t , чтобы указать временную метку и использовать её вместо текущего времени. Аргумент «временная метка» должен иметь следующий формат:

 use [[ CC ] YY ] MMDDhhmm [ .ss ]

Например, следующая команда установит время последнего доступа и изменения file1 на 1 июня 11:02 текущего года.

 touch -t 06011102 file1

Использование временной метки другого файла

Параметр -r ( --reference= ) позволяет указать справочный файл и использовать его временные метки вместо текущего времени.

Например, следующая команда сообщит touch, что нужно использовать время file1 для file2 :

 touch -r file1 file2

По умолчанию, если вы используете команду touch для символической ссылки, она изменит временные метки файла, на который она ссылается.

Используйте опцию -h ( --no-dereference ), чтобы изменить временную метку символической ссылки.

Например, чтобы изменить временные метки символической ссылки symlink1 вы можете использовать:

 touch -h symlink1

Заключение

К настоящему моменту вы должны хорошо понимать, как использовать команду Linux touch.

сенсорный терминал

Связанные руководства

Источник

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

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