Touch
touch — команда Unix, призначена для встановлення часу останньої зміни файлу або доступу в поточний час. Також використовується для створення пустих файлів[1].
Історія
Утиліта touch з'явилася в операційній системі AT & T UNIX Version 7. Версія утиліти touch, яка йде в комплекті з GNU coreutils, була розроблена Полом Рабіном , Арнольдом Роббінсом, Джимом Кінгдоном, Девідом Маккінзі і Ренді Смітом.
Специфікація
Згідно POSIX утиліта touch змінює час останньої зміни файлу або час останнього доступу до нього. Файл або шлях до нього передається в якості аргументу. Якщо файл не існує, утиліта створює порожній файл з вказаним ім'ям та встановлює час останньої зміни і останнього доступу в значення, передане в якості аргументу. Якщо аргумент часу не заданий, використовується поточний час [2].
touch [-acfhm] [-r файл] [-t [[CC]YY]MMDDhhmm.
[SS]] файл
-a
Встановлює час останнього доступу до файлу. Час останньої зміни не встановлюється, якщо явно не заданий ключ -m
-c
Вказує утиліті не створювати файл, якщо він не існує, при цьому ніяких повідомлень про помилку показано не буде.
-f
Намагається оновити інформацію про час, навіть якщо права доступу файлу не дозволяють робити.
-h
Вказує утиліті змінювати символічне посилання замість файлу, на який воно посилається.
-m
Встановлює час останньої зміни файлу.
-r file
Використовувати значення часу з файлу, заданого аргументом file.
-t time
Встановлює час останньої зміни і доступу відповідно до зазначеного форматом time.
Формат дати, зазначений в ключі -t, задається відповідно до шаблону [[СС]YY]MMDDhhmm[.
SS]
: </br> СС - перші дві цифри року (вік).
YY - останні дві цифри року.
Якщо параметр CC не заданий і значення YY знаходиться в межах 69 і 99, то тоді СС встановлюється рівним 19, в іншому випадку використовується 20. MM - двозначний номер місяця.
DD - двозначний номер дня.
hh - значення годин дати.
mm - значення хвилин дати.
SS - значення секунд дати.
У різних UNIX -подібних системах синтаксис команди може відрізнятися. Наприклад, GNU touch містить опцію -d, яка дозволяє встановлювати дату в форматах, що відрізняються від згаданих вище.
Приклади
Створює файл myfile.txt і встановлює час останньої зміни та доступу в даний час в системі; якщо файл існує - оновлює час останньої зміни і доступу, не змінюючи при цьому вмісту файлу:
# touch myfile.txt
</br> Встановлює дату останньої зміни і доступу в 8:46:26 31 січня 2007 р .:
# touch -t 200701310846.26 index.html # touch -d '2007-01-31 8:46:26' index.html # touch -d 'Jan 31 2007 8:46:26' index.html
За допомогою команди touch можна впливати на файл, який навіть не створено. В кінцевому підсумку, буде створено новий файл із зазначеним, необхідним ім'ям[3].
ls 1 ~/
drwxr xr x 848 2005 10 19 11:36 src
drwxr xr x 632 2005 10 18 12:25 videos
touch test.txt
ls 1 ~/
drwxr xr x 848 2005 10 19 11:36 src
rw r r 0 2005 10 19 23:41 test.txt
drwxr xr x 632 2005 10 18 12:25 videos
246
Примітки
- Lenore (1 авг. 2008 г.). Учим Unix: touch: создание файлов. Учим Unix. Процитовано 9 лютого 2019.
- touch Программки и утилиты — Linux портал. hpunix.org. Архів оригіналу за 9 лютого 2019. Процитовано 9 лютого 2019.
- Создание нового пустого файла. linuxe.ru. Процитовано 9 лютого 2019.
Посилання
- touch - довідкова сторінка GNU coreutils
- touch - довідкова сторінка операційної системи OpenBSD
- Офіційна специфікація touch
- Приклади використання touch