Как использовать команду Touch в Linux

12 set 2022 2 min di lettura
Как использовать команду Touch в Linux
Indice dei contenuti

Введение

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

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

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

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

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

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

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

stat file_name

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

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

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

Если файл уже существует, 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 на 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 12061102 file1

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

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

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

touch -r file1 file2

Изменение даты/времени символической ссылки

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

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

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

touch -h symlink1

Вывод

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

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.