Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DATE(1)			    General Commands Manual		       DATE(1)

NAME
       date -- display or set date and time

SYNOPSIS
       date   [-d   dst]   [-r	seconds]  [-t  minutes_west]  [-nu]  [+format]
	    [-v	[+|-]val[ymwdHM]] ... [-f fmt date | [[[[yy]mm]dd]HH]MM[.ss]]

DESCRIPTION
       date displays the current date and time when invoked without arguments.
       Providing arguments will	format the date	and time in a user-defined way
       or set the date.	 Only the superuser may	set the	date.

       The options are as follows:

       -d      Set the kernel's	value for daylight savings time.   If  dst  is
	       non-zero,  future  calls	 to gettimeofday(2) will return	a non-
	       zero `tz_dsttime'.

       -f      Use fmt as the format string to parse the date provided	rather
	       than using the default [[[[yy]mm]dd]HH]MM[.ss] format.  Parsing
	       is done using strptime(3).

       -n      The  utility  timed(8)  is  used	 to  synchronize the clocks on
	       groups of machines.  By default,	if timed is running, date will
	       set the time on all of the machines in the local	group.	The -n
	       option stops date from setting the time for other than the cur-
	       rent machine.

       -r      Print out the date and time in seconds from the Epoch.

       -t      Set the kernel'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 UCT (universal) time.

       -v      Adjust the minute, hour,	month day, week	day, month or year ac-
	       cording to val.	If val is preceeded with a plus	or minus sign,
	       the date	is adjusted forwards or	backwards according to the re-
	       maining string, otherwise the relevant part of the date is set.
	       The  date can be	adjusted as many times as required using these
	       flags.  Flags are processed in the order	given.

	       Minutes are in the range	0-59, hours are	 in  the  range	 1-12,
	       month  days  are	 in the	range 1-31, week days are in the range
	       0-6 (sun-sat), months are in the	range 1-12 (jan-dec) and years
	       are in the range	80-38 or 1980-2038.

	       If val is numeric, one of either	y, m, w, d, H  or  M  must  be
	       used to specify which part of the date is to be adjusted.

	       The week	day or month may be specified using a name rather than
	       a number.  If a name is used with the plus (or minus) sign, the
	       date will be put	forwards (or backwards)	to the next (previous)
	       date  that  matches the given week day or month.	 This will not
	       adjust the date if the given week day or	month is the  same  as
	       the current one.

	       Refer to	the examples below for further details.

       An operand with a leading plus (``+'') sign signals a user-defined for-
       mat  string which specifies the format in which to display the date and
       time.  The format string	may contain any	of the	conversion  specifica-
       tions  described	 in  the strftime(3) manual page, as well as any arbi-
       trary text.  A <newline>	character is always output after  the  charac-
       ters specified by the format string.  The format	string for the default
       display is:

	     ``+%+''

       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 (e.g. 89 for 1989, 06 for	2006).
	     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	     Minutes, a	number from 0 to 59.
	     .ss     Seconds, a	number from 0 to 61 (59	plus a maximum of  two
		     leap seconds).

       Everything but the minutes is optional.

       Time changes for	Daylight Saving	and Standard time and leap seconds and
       years are handled automatically.

EXAMPLES
       The command:

	     date ``+DATE: %m/%d/%y%nTIME: %H:%M:%S''

       will display:

	     DATE: 11/21/87
	     TIME: 13:36:16

       The command:

	     date -v1m -v+1y

       will display:

	     Sun Jan  4	03:15:24 GMT 1998

       (where it is currently Mon Aug  4 04:15:24 BST 1997).

       The command:

	     date -v1d -v3m -v0y -v-1d

       will display the	last day of February in	the year 2000:

	     Tue Feb 29	03:18:00 GMT 2000

       The command:

	     date -v1d -v+1m -v-1d -v-fri

       will display the	last friday of the month:

	     Fri Aug 29	04:31:11 BST 1997

       (where it is currently Mon Aug  4 04:31:11 BST 1997).

       The command:

	     date 8506131627

       sets the	date to	"June 13, 1985,	4:27 PM".

       The command:

	     date 1432

       sets the	time to	2:32 PM, without modifying the date.

ENVIRONMENT VARIABLES
       The  execution  of  date	is affected by the following environment vari-
       ables:

       TZ      The timezone to use when	displaying dates.  The	normal	format
	       is  a pathname relative to "/usr/share/zoneinfo".  For example,
	       the command "TZ=America/Los_Angeles date" displays the  current
	       time in California.  See	environ(7) for more information.

FILES
       /var/log/wtmp	  A record of date resets and time changes.
       /var/log/messages  A record of the user setting the time.

SEE ALSO
       gettimeofday(2),	strftime(3), strptime(3), utmp(5), timed(8)

       R.  Gusella  and	 S.  Zatti, TSP: The Time Synchronization Protocol for
       UNIX 4.3BSD.

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	synchronizes 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 fails.

BUGS
       The  system  attempts  to  keep the date	in a format closely compatible
       with VMS.  VMS, however,	uses local time	(rather	than GMT) and does not
       understand daylight-savings time.  Thus,	if you use both	UNIX and  VMS,
       VMS will	be running on GMT.

STANDARDS
       The  date  command  is  expected	 to be compatible with IEEE Std	1003.2
       ("POSIX.2").

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

FreeBSD	2.2.5		       November	17, 1993		       DATE(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=date&manpath=FreeBSD+2.2.5-RELEASE>

home | help