Пользовательские команды |
touch(1) |
touch, settime - изменение времени доступа и времени модификации файла
Утилита touch устанавливает время доступа и время модификации указанных файлов. Если файл не существует, он создается.
Время может задаваться опцией -t время, соответствующими значениями атрибутов времени файла, указанного в опции -r базовый_файл, или с помощью операнда дата_и_время. Если время одним из этих способов явно не задано, утилита touch использует текущее время (значение, возвращаемое функцией time(2)).
Если не указаны ни опция -a, ни опция -m, утилита touch изменяет и время модификации, и время доступа.
Утилита settime эквивалентна вызову touch -c.
Утилита touch поддерживает следующие опции:
где каждая пара цифр представляет следующее:
MM | Месяц года [01-12]. |
DD | День месяца [01-31]. |
hh | Час дня [00-23]. |
mm | Минута часа [00-59]. |
CC | Первые две цифры года. |
YY | Последние две цифры года. |
SS | Секунда минуты [00-61]. |
Значения CC и YY - не обязательны. Если ни одно из них не задано, предполагается текущий год. Если указано значение YY, но не указано CC, значение CC определяется следующим образом:
Если YY в диапазоне: | CC становится: |
69-99 | 19 |
00-38 | 20 |
39-68 | ОШИБКА |
На результирующее время будет влиять значение переменной среды TZ. Если результирующее время окажется раньше начала эры UNIX (Epoch, 1 января 1970 года), touch немедленно завершит работу с ошибочным статусом выхода. Диапазон допустимых времен - с 1 января 1970 года по 18 января 2038 года.
Для SS допустимый диапазон значений - [00-61], а не [00-59], из-за набегающих в году дополнительных секунд (leap seconds). Если SS имеет значение 60 или 61, и результирующее время, с учетом значение переменной среды TZ, не ссылается на дополнительную секунду, результирующее время будет на одну или две секунды больше, чем если бы параметр SS имел значение 59. Если значение SS не задано, предполагается 0.
Утилита settime поддерживает следующую опцию:
Обе утилиты, touch и settime, поддерживают следующий операнд:
Утилита touch поддерживает следующий операнд:
где каждая пара цифр представляет следующее:
MM | Месяц года [01-12]. |
DD | День месяца [01-31]. |
hh | Час дня [00-23]. |
mm | Минута часа [00-59]. |
YY | Последние две цифры года. |
Значение YY - не обязательно. Если оно не указано, предполагается текущий год. Если значение YY указано, год определяется следующим образом:
YY | Соответствующий год |
69-99 | 1969-1999 |
00-38 | 2000-2038 |
39-68 | ОШИБКА |
Если ни опция -r, ни опция -t не указана, задано минимум два операнда и первый операнд - восьми- или десятизначное десятичное число, первый операнд будет считаться операндом дата_и_время; в противном случае, первый операнд считается файлом.
Описание работы утилиты touch с файлами, размер которых превосходит 2 Гбайта (2**31 байтов) см. на странице справочного руководства largefile(5).
Описание следующих переменных среды, влияющих на работу touch, см. на странице справочного руководства environ(5): LANG, LC_ALL, LC_CTYPE, LC_MESSAGES и NLSPATH.
Программа завершается со следующими значениями статуса выхода:
0 | Утилита touch сработала успешно, и все требуемые изменения были выполнены. |
>0 | Произошла ошибка. Утилита touch вернула количество файлов, атрибуты времени для которых не удалось успешно изменить. |
Описание следующих атрибутов см. на странице справочного руководства attributes(5):
ТИП АТРИБУТА | ЗНАЧЕНИЕ АТРИБУТА |
Доступен в пакете | SUNWcsu |
CSI | включено |
Пользователи, знакомые со средой BSD, могут обнаружить, что для утилиты touch опция -f принимается, но игнорируется. Опция -f не нужна, потому что touch успешно выполнится для всех файлов, принадлежащих пользователю, независимо от прав доступа к ним.
Последнее изменение: 2 марта 1998 года
Copyright 2002 В. Кравчук, OpenXS Initiative, перевод на русский язык
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |