Android

Linux touch command

Linux Command Line Tutorial For Beginners 11 - touch command

Linux Command Line Tutorial For Beginners 11 - touch command

Оглавление:

Anonim

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

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

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

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

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

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

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

stat file_name

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

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

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

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

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

touch file1

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

touch file1 file2 file3

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

touch -c file1

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

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

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

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

touch -a file1

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

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

touch -m file1

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

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

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

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

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

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

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

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

touch -d '12 June' file1

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

use YY]MMDDhhmm

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

touch -t 12061102 file1

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

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

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

touch -r file1 file2

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

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

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

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

touch -h symlink1

Вывод

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

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