MirBSD manpage: date(1)

DATE(1)                      BSD Reference Manual                      DATE(1)

NAME

     date - display or set date and time

SYNOPSIS

     date [-anRu] [-d dst] [-I ext] [-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.

     Only the superuser may set 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.

     -I ext  Select ISO 8601 format; ext must be exactly an initial substring
             of "seconds" for compatibility with GNU coreutils' date. Normally
             "%Y-%m-%dT%H:%M:%S%:z" is used as format string; in conjunction
             with -u "%Y-%m-%dT%H:%M:%SZ" is used instead (contrary to GNU).

     -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      Select RFC 2822 format: "%a, %d %b %Y %H:%M:%S %z"

     -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 UTC. minutes_west
             specifies the number of minutes returned in tz_minuteswest by fu-
             ture 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 speci-
     fied 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:

           yy      Year in abbreviated form (for years 1969-2068). The format
                   ccyymmddHHMM is also permitted, for non-ambiguous years.
           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 timezone to use when displaying dates. See environ(7) for
             more information. If this variable is not set, the timezone is
             determined based on /etc/localtime, which the administrator ad-
             justs 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

EXAMPLES

     The following command:

           $ date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"

     displays:

           DATE: 1987-11-21
           TIME: 13:36:16

     Set the date to June 13, 1985, 4:27 PM:

           # date 8506131627

     Set the time to 2:32 PM, without modifying the date:

           # date 1432

     Display the date in ISO and Internet standard formats:

           $ export TZ=Europe/Bonn; date -Is; date -uIs; date -R; date -Ru
           2021-01-23T17:53:45+01:00
           2021-01-23T16:53:45Z
           Sat, 23 Jan 2021 17:53:45 +0100
           Sat, 23 Jan 2021 16:53:45 +0000

DIAGNOSTICS

     Exit status is 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.

     Occasionally, when timed(8) synchronises the time on many hosts, the set-
     ting 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 ALSO

     adjtime(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 expected to be compatible with IEEE Std 1003.2
     ("POSIX.2").

HISTORY

     A date command appeared in Version 1 AT&T UNIX.

     The -I and -R options, supported since MirBSD #11, are extensions that
     were developed for some level of compatibility with GNU date.

MirBSD #10-current             January 23, 2021                              2

Generated on 2021-12-07 11:07:08 by $MirOS: src/scripts/roff2htm,v 1.103 2021/01/23 20:24:35 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2021 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.