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

FreeBSD Manual Pages


home | help
ZIC(8)			  BSD System Manager's Manual			ZIC(8)

     zic -- timezone compiler

     zic [-Dsv]	[-d directory] [-g group] [-L leapsecondfilename]
	 [-l localtime]	[-m mode] [-p posixrules] [-u user] [-y	command]
	 [filename ...]

     Zic reads text from the file(s) named on the command line and creates the
     time conversion information files specified in this input.	 If a filename
     is	-, the standard	input is read.

     The following options are available:

     -D	     Do	not automatically create directories.  If the input file(s)
	     specify an	output file in a directory which does not already ex-
	     ist, the default behavior is to attempt to	create the directory.
	     If	-D is specified, zic will instead error	out immediately.

     -d	directory
	     Create time conversion information	files in the named directory
	     rather than in the	standard directory named below.

     -g	group
	     After creating each output	file, change its group ownership to
	     the specified group (which	can be either a	name or	a numeric
	     group ID).

     -L	leapsecondfilename
	     Read leap second information from the file	with the given name.
	     If	this option is not used, no leap second	information appears in
	     output files.

     -l	timezone
	     Use the given time	zone as	local time.  Zic will act as if	the
	     input contained a link line of the	form

		   Link	   timezone		   localtime
	     (Note that	this action has	no effect on FreeBSD, since the	local
	     time zone is specified in /etc/localtime and not

     -m	mode
	     After creating each output	file, change its access	mode to	mode.
	     Both numeric and alphabetic modes are accepted (see chmod(1)).

     -p	timezone
	     Use the given time	zone's rules when handling POSIX-format	time
	     zone environment variables.  Zic will act as if the input con-
	     tained a link line	of the form

		   Link	   timezone		   posixrules

     -u	user
	     After creating each output	file, change its owner to user (which
	     can be either a name or a numeric user ID).

     -v	     Complain if a year	that appears in	a data file is outside the
	     range of years representable by time(3) values.

     -s	     Limit time	values stored in output	files to values	that are the
	     same whether they're taken	to be signed or	unsigned.  You can use
	     this option to generate SVVS-compatible files.

     -y	command
	     Use the given command rather than yearistype when checking	year
	     types (see	below).

     Input lines are made up of	fields.	 Fields	are separated from one another
     by	any number of white space characters.  Leading and trailing white
     space on input lines is ignored.  An unquoted sharp character (#) in the
     input introduces a	comment	which extends to the end of the	line the sharp
     character appears on.  White space	characters and sharp characters	may be
     enclosed in double	quotes (") if they're to be used as part of a field.
     Any line that is blank (after comment stripping) is ignored.  Non-blank
     lines are expected	to be of one of	three types: rule lines, zone lines,
     and link lines.

     A rule line has the form:
     For example:
	   Rule	US   1967 1973 -    Apr	 lastSun   2:00	1:00 D

     The fields	that make up a rule line are:

	   NAME	     Give the (arbitrary) name of the set of rules this	rule
		     is	part of.

	   FROM	     Give the first year in which the rule applies.  Any inte-
		     ger year can be supplied; the Gregorian calendar is as-
		     sumed.  The word minimum (or an abbreviation) means the
		     minimum year representable	as an integer.	The word
		     maximum (or an abbreviation) means	the maximum year rep-
		     resentable	as an integer.	Rules can describe times that
		     are not representable as time values, with	the unrepre-
		     sentable times ignored; this allows rules to be portable
		     among hosts with differing	time value types.

	   TO	     Give the final year in which the rule applies.  In	addi-
		     tion to minimum and maximum (as above), the word only (or
		     an	abbreviation) may be used to repeat the	value of the
		     FROM field.

	   TYPE	     Give the type of year in which the	rule applies.  If TYPE
		     is	- then the rule	applies	in all years between FROM and
		     TO	inclusive.  If TYPE is something else, then zic	exe-
		     cutes the command yearistype year type to check the type
		     of	a year:	an exit	status of zero is taken	to mean	that
		     the year is of the	given type; an exit status of one is
		     taken to mean that	the year is not	of the given type.

	   IN	     Name the month in which the rule takes effect.  Month
		     names may be abbreviated.

	   ON	     Give the day on which the rule takes effect.  Recognized
		     forms include:

			   5	    the	fifth of the month
			   lastSun  the	last Sunday in the month
			   lastMon  the	last Monday in the month
			   Sun>=8   first Sunday on or after the eighth
			   Sun<=25  last Sunday	on or before the 25th

		     Names of days of the week may be abbreviated or spelled
		     out in full.  Note	that there must	be no spaces within
		     the ON field.

	   AT	     Give the time of day at which the rule takes effect.
		     Recognized	forms include:

			   2	    time in hours
			   2:00	    time in hours and minutes
			   15:00    24-hour format time	(for times after noon)
			   1:28:14  time in hours, minutes, and	seconds

		     where hour	0 is midnight at the start of the day, and
		     hour 24 is	midnight at the	end of the day.	 Any of	these
		     forms may be followed by the letter `w' if	the given time
		     is	local "wall clock" time, `s' if	the given time is lo-
		     cal "standard" time, or `u' (or `g' or `z') if the	given
		     time is universal time; in	the absence of an indicator,
		     wall clock	time is	assumed.

	   SAVE	     Give the amount of	time to	be added to local standard
		     time when the rule	is in effect.  This field has the same
		     format as the AT field (although, of course, the `w' and
		     `s' suffixes are not used).

	   LETTER/S  Give the "variable	part" (for example, the	"S" or "D" in
		     "EST" or "EDT") of	time zone abbreviations	to be used
		     when this rule is in effect.  If this field is -, the
		     variable part is null.

     A zone line has the form:
     For example:
	   Zone	Australia/Adelaide  9:30 Aus  CST  1971	Oct 31 2:00
     The fields	that make up a zone line are:

     NAME    The name of the time zone.	 This is the name used in creating the
	     time conversion information file for the zone.

     GMTOFF  The amount	of time	to add to UTC to get standard time in this
	     zone.  This field has the same format as the AT and SAVE fields
	     of	rule lines; begin the field with a minus sign if time must be
	     subtracted	from UTC.

	     The name of the rule(s) that apply	in the time zone or, alter-
	     nately, an	amount of time to add to local standard	time.  If this
	     field is -	then standard time always applies in the time zone.

     FORMAT  The format	for time zone abbreviations in this time zone.	The
	     pair of characters	%s is used to show where the "variable part"
	     of	the time zone abbreviation goes.  Alternately, a slash (/)
	     separates standard	and daylight abbreviations.

     UNTIL   The time at which the UTC offset or the rule(s) change for	a lo-
	     cation.  It is specified as a year, a month, a day, and a time of
	     day.  If this is specified, the time zone information is gener-
	     ated from the given UTC offset and	rule change until the time
	     specified.	 The month, day, and time of day have the same format
	     as	the IN,	ON, and	AT columns of a	rule; trailing columns can be
	     omitted, and default to the earliest possible value for the miss-
	     ing columns.

	     The next line must	be a "continuation" line; this has the same
	     form as a zone line except	that the string	"Zone" and the name
	     are omitted, as the continuation line will	place information
	     starting at the time specified as the UNTIL field in the previous
	     line in the file used by the previous line.  Continuation lines
	     may contain an UNTIL field, just as zone lines do,	indicating
	     that the next line	is a further continuation.

     A link line has the form
     For example:
	   Link	Europe/Istanbul	    Asia/Istanbul
     The LINK-FROM field should	appear as the NAME field in some zone line;
     the LINK-TO field is used as an alternate name for	that zone.

     Except for	continuation lines, lines may appear in	any order in the in-

     Lines in the file that describes leap seconds have	the following form:
     For example:
	   Leap	1974 Dec  31   23:59:60	 +    S
     The YEAR, MONTH, DAY, and HH:MM:SS	fields tell when the leap second hap-
     pened.  The CORR field should be "+" if a second was added	or "-" if a
     second was	skipped.  The R/S field	should be (an abbreviation of)
     "Stationary" if the leap second time given	by the other fields should be
     interpreted as UTC	or (an abbreviation of)	"Rolling" if the leap second
     time given	by the other fields should be interpreted as local wall	clock

     For areas with more than two types	of local time, you may need to use lo-
     cal standard time in the AT field of the earliest transition time's rule
     to	ensure that the	earliest transition time recorded in the compiled file
     is	correct.

     /usr/share/zoneinfo  standard directory used for created files

     ctime(3), tzfile(5), zdump(8)

BSD			       October 29, 1997				   BSD


Want to link to this manual page? Use this URL:

home | help