DATE(1) OpenBSD Reference Manual DATE(1)NAMEdate - display or set date and time
SYNOPSISdate [-ajnu] [-d dst] [-r seconds] [-t minutes_west] [+format]
[[[[[[cc]yy]mm]dd]HH]MM[.SS]]
DESCRIPTION
When invoked without arguments, the date utility displays the current
date and time. Otherwise, depending on the options specified, date will
set the date and time or print it in a user-defined way.
Changing the system date has some risks, as described in settimeofday(2).
Only the superuser may change the date.
The options are as follows:
-a Use the adjtime(2) call to gradually skew the local time to the
remote time rather than just hopping.
-d dst Set the system's value for Daylight Saving Time. If dst is non-
zero, future calls to gettimeofday(2) will return a non-zero
value for tz_dsttime.
-j Parse the provided date and time and display the result without
changing the clock.
-n By default, if the timed(8) daemon is running, date sets the time
on all of the machines in the local group. The -n option
suppresses this behavior and causes the time to be set only on
the current machine.
-r seconds
Print out (in specified format) the date and time represented by
seconds from the Epoch.
-t minutes_west
Set the system's value for minutes west of GMT. minutes_west
specifies the number of minutes returned in tz_minuteswest by
future calls to gettimeofday(2).
-u Display or set the date in UTC (Coordinated Universal) time.
An operand with a leading plus sign (`+') signals a user-defined format
string which specifies the format in which to display the date and time.
The format string may contain any of the conversion specifications
described in the strftime(3) manual page, as well as any arbitrary text.
A newline (`\n') character is always output after the characters
specified by the format string. The format string for the default
display is:
%a %b %e %H:%M:%S %Z %Y
If an operand does not have a leading plus sign, it is interpreted as a
value for setting the system's notion of the current date and time. The
canonical representation for setting the date and time is:
ccyy Year: the first two digits (representing the century) may
be omitted for non-ambiguous years (1969-2068).
mm Numeric month: a number from 1 to 12.
dd Day: a number from 1 to 31.
HH Hour: a number from 0 to 23.
MM Minute: a number from 0 to 59.
SS Second: a number from 0 to 61 (59 plus a maximum of two
leap seconds).
Everything but the minute is optional.
Time changes for Daylight Saving Time, standard time, leap seconds, and
leap years are handled automatically.
ENVIRONMENT
TZ The time zone to use when displaying dates. See environ(7) for
more information. If this variable is not set, the time zone is
determined based on /etc/localtime, which the administrator
adjusts using the -l option of zic(8).
FILES
/var/log/wtmp record of date resets and time changes
/var/log/messages record of the user setting the time
EXIT STATUS
The date utility exits 0 on success, 1 if unable to set the date, and 2
if able to set the local date, but unable to set it globally.
EXAMPLES
Display the date using the specified format string:
$ date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"
DATE: 1987-11-21
TIME: 13:36:16
Set the date to June 13, 1985, 4:27 PM:
# date 198506131627
Set the time to 2:32 PM, without modifying the date:
# date 1432
DIAGNOSTICS
Occasionally, when timed(8) synchronizes the time on many hosts, the
setting of a new time value may require more than a few seconds. On
these occasions, date prints: ``Network time being set''. The message
``Communication error with timed'' occurs when the communication between
date and timed(8) fails.
SEE ALSOadjtime(2), gettimeofday(2), strftime(3), utmp(5), ntpd(8), rdate(8),
timed(8)
R. Gusella and S. Zatti, TSP: The Time Synchronization Protocol for UNIX
4.3BSD.
STANDARDS
The date utility is compliant with the IEEE Std 1003.1-2008 (``POSIX'')
specification.
The flags [-adjnrt] are extensions to that specification.
HISTORY
A date command appeared in Version 1 AT&T UNIX.
OpenBSD 4.9 September 19, 2010 OpenBSD 4.9