Manual pages › General commands (1)
date-original(1)
print and set the date
From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.
With the coreutil package (with the extra set), see date(1) instead.
NAME
date - print and set the date
SYNOPSIS
date [ -u ] [ + format ] date [ -a [ - ] sss.fff ] [ -u ] [[ mmdd]HHMM | mmddHHMM[cc]yy ]
DESCRIPTION
If no argument is given, or if the argument begins with +, the current date and time are printed. Otherwise, the current date is set (only by super-user).
-a [ - ] sss.fff
Slowly adjust the time by sss.fff seconds (fff represents fractions of a second). This adjustment can be positive or negative. The system's clock will be sped up or slowed down until it has drifted by the number of seconds specified.
-u Display (or set) the date in Greenwich Mean Time (GMT-universal time), bypassing the normal conversion to (or from) local time.
mm is the month number
dd is the day number in the month
HH is the hour number (24 hour system)
MM is the minute number
cc is the century minus one
yy is the last 2 digits of the year number
The month, day, year, and century may be omit-
ted; the current values are C|pplied as
defaults. For example:
date 10080045
sets the date to Oct 8, 12:45 AM. The current year is the default because no year is supplied. The system operates in GMT. date takes care of the conversion to and from local standard and daylight time. Only the super-user may change the date. After successfully setting the date and time, date displays the new date according to the default format. The date command uses TZ to determine the correct time zone information (see environ(5)).
+ format If the argument begins with +, the output of date is under the control of the user. Each Field Descriptor, described below, is preceded by % and is replaced in the output by its corresponding value. A single % is encoded by %%. All other characters are copied to the output without change. The string is always terminated with a new-line character. If the argument contains embedded blanks it must be quoted (see the EXAMPLE section).
Specifications of native language translations of month and weekday names are supported. The month and weekday names used for a language are based on the locale specified by the environment variables LC_TIME and LANG (see environ(5)).
The month and weekday names used for a language are taken from a file whose format is specified in strftime(4). This file also defines country-specific date and time formats such as %c, which specifies the default date format. The following form is the default for %c: %a %b %e %T %Z %Y e.g., Fri Dec 23 10:10:42 EST 1988 Field Descriptors (must be preceded by a %): a abbreviated weekday name A full weekday name b abbreviated month name B full month name c country-specific date and time format d day of month - 01 to 31 D date as %m/%d/%y e day of month - 1 to 31 (single digits are preceded by a blank) h abbreviated month name (alias for %b) H hour - 00 to 23 I hour - 01 to 12 j day of year - 001 to 366 m month of year - 01 to 12 M minute - 00 to 59 n insert a new-line character p string containing ante-meridiem or post-meridiem indicator (by default, AM or PM) r time as %I:%M:%S %p R time as %H:%M S second - 00 to 61, allows for leap seconds t insert a tab character T time as %H:%M:%S U week number of year (Sunday as the first day of the week) - 00 to 53 w day of week - Sunday = 0 W week number of year (Monday as the first day of the week) - 00 to 53 x Country-specific date format X Country-specific time format y year within century - 00 to 99 Y year as ccyy (4 digits) Z timezone name
EXAMPLE
The command
date '+DATE: %m/%d/%y%nTIME: %H:%M:%S'
generates as output:
DATE: 08/01/76 TIME: 14:45:05
DIAGNOSTICS
No permission You are not the super-user and you try to
change the date.
bad conversion The date set is syntactically incorrect.
NOTES
Should you need to change the date while the system is running multi-user, use the datetime command of sysadm(1M). If you attempt to set the current date to one of the dates that the standard and alternate time zones change (for example, the date that daylight time is starting or ending), and you attempt to set the time to a time in the interval between the end of standard time and the beginning of the alternate time (or the end of the alternate time and the beginning of standard time), the results are unpredictable.
SEE ALSO
sysadm(1M), strftime(4), environ(5) in the System Administrator's Reference Manual.