- Date
-
date
date — утилита Unix для работы с системными часами. Выводит текущую дату и время в различных форматах и позволяет устанавливать системное время.
Содержание
Использование
При вызове команды без параметров выводит текущее время:
$ date Sun Dec 6 15:33:24 MSK 2009
При вызове с параметром, который начинается с цифры, устанавливает системное время. Поскольку стандарт Single Unix Specification не описывает, как утилита
date
устанавливает время[1], разные операционные системы используют разные форматы для этого параметра: например,MMDDhhmm[[CC]YY][.ss]
в Linux,[[[[[CC]YY]MM]DD]hh]mm[.ss]
в FreeBSD и[[MMDD]hhmm|MMDDhhmm[CC]YY][.ss]
в Solaris (гдеCC
,YY
,MM
,DD
,hh
,mm
, иss
означают столетие, год столетия, месяц, число, час, минуту и секунду). Следовательно,$ date 1230100509.45 # в Linux и Solaris; или $ date 0912301005.45 # в FreeBSD
устанавливает дату и время на 10:05:45, 30 декабря 2009.
При вызове с параметром, который начинается с
+
, параметр используется как строка форматирования вывода.Строка форматирования вывода (первым символом должен быть +
)Спецификатор Описание Пример (локаль en_US) Пример (локаль ru_RU) День %a
день недели, сокр. Sun Вск %A
день недели, полный Sunday Воскресенье %d
число месяца (01—31) 06 %e
число месяца, дополненное пробелом ( 1—31) 6 %j
день года (001—366) 340 %u
день недели (1—7, воскресенье = 7) 7 %w
день недели (0—6, воскресенье = 0) 0 Неделя %U
номер недели (00—53, воскресенье — первый день недели) 49 %W
номер недели (00—53, понедельник — первый день недели) 48 %V
номер недели (01—53, понедельник — первый день недели) 49 Месяц %m
номер месяца (01—12) 12 %h
или%b
месяц, сокр. Dec Дек %B
месяц, полный December Декабрь Год %y
год без столетия (00—99) 09 %C
столетие (00—99) 20 %Y
год включая столетие 2009 %g
[2]год (без столетия) понедельника недели %V
09 %G
[2]год (включая столетие) понедельника недели %V
2009 Дата %D
%m/%d/%y
12/06/09 %x
дата в формате текущей локали 12/06/2009 06.12.2009 %F
[2]%Y-%m-%d
2009-12-06 Час %l
[2]час в 12-часовой системе, дополненный пробелом ( 1—12) 3 %I
час в 12-часовой системе (01—12) 03 %k
[2]час, дополненный пробелом ( 0—23) 15 %H
час (00—23) 15 %p
В английских локалях, AM («до полудня») или PM («после полудня»).
Во многих других локалях не используется.PM %P
[2]То же, что %p
, но строчными буквамиpm Минута %M
минута (00—59) 33 Секунда %s
[2]секунд с 00:00:00 1970-01-01 UTC (см. UNIX-время) 1260102804 %S
секунда (00—60) 24 %N
[2]наносекунда (000000000—999999999) 000000000 Время %r
12-часовое время в текущей локали 03:33:24 PM 03:33:24 %R
[2]%H:%M
15:33 %T
%H:%M:%S
15:33:24 %X
время в стандартном формате для текущей локали 03:33:24 PM 15:33:24 Дата и время %c
дата и время в стандартном формате для текущей локали Sun 06 Dec 2009 03:33:24 PM MSK Вск 06 Дек 2009 15:33:24 Часовой пояс %z
[2]часовой пояс в формате RFC-2822 ( ±zzzz
)+0300 %:z
[2]часовой пояс в формате RFC-3339 ( ±zz:zz
)+03:00 %Z
алфавитный код часового пояса MSK Оформление %%
Символ «%» %n
Новая строка ( 0x0a
)%t
Табуляция ( 0x09
)Ключи
Единственный ключ, который определен по стандарту Single Unix Specification —
-u
[1]; остальные могут различаться в разных операционных системах. Ниже указаны ключи, которые используются вdate
в GNU Coreutils.-d, --date=СТРОКА
— вывести не текущее время/дату, а время/дату, описанное строкой.-f, --file=ФАЙЛ
— то же, чтоdate -d
для каждой строки файла.-r, --reference=ФАЙЛ
— вывести не текущее время/дату, а время/дату последнего изменения файла.-R, --rfc-2822
— вывести дату в формате RFC-2822. То же, чтоdate '+%a, %d %b %Y %T %z'
(например «Sun, 06 Dec 2009 15:33:24 +0300»).--rfc-3339=СТРОКА
— вывести дату в формате RFC-3339; строка может быть «date», «seconds» или «ns», То есть:date --rfc-3339=date
— то же самое, чтоdate +%F
date --rfc-3339=seconds
— то же самое, чтоdate '+%F %T%:z'
date --rfc-3339=ns
— то же самое, чтоdate '+%F %T.%N%:z'
-s, --set=СТРОКА
— установить время/дату, описанное строкой.-u, --utc, --universal
— время выводится или устанавливается в UTC.
См. также
Примечания
Ссылки
- man по пользовательским командам GNU/Linux на сайте OpenNet (рус.) — страница справки
- man по пользовательским командам GNU/Linux (англ.) — страница справки
- man по пользовательским командам FreeBSD (англ.) — страница справки
- Установка даты и времени в Linux
Wikimedia Foundation. 2010.