Manual: zdump
zdump(8) System Manager's Manual zdump(8)
NAME
zdump - timezone dumper
SYNOPSIS
zdump [ option ... ] [ timezone ... ]
DESCRIPTION
The zdump program prints the current time in each timezone named on the command line. A timezone of - is treated as
if it were /dev/stdin; this can be used to pipe TZif data into zdump.
OPTIONS
--version
Output version information and exit.
--help Output short usage message and exit.
-i Output a description of time intervals. For each timezone on the command line, output an interval-format deā
scription of the timezone. See āINTERVAL FORMATā below.
-v Output a verbose description of time intervals. For each timezone on the command line, print the times at the
two extreme time values, the times (if present) at and just beyond the boundaries of years that localtime(3)
and gmtime(3) can represent, and the times both one second before and exactly at each detected time discontiā
nuity. Each line is followed by isdst=D where D is positive, zero, or negative depending on whether the given
time is daylight saving time, standard time, or an unknown time type, respectively. Each line is also folā
lowed by gmtoff=N if the given local time is known to be N seconds east of Greenwich.
-V Like -v, except omit output concerning extreme time and year values. This generates output that is easier to
compare to that of implementations with different time representations.
-c [loyear,]hiyear
Cut off interval output at the given year(s). Cutoff times are computed using the proleptic Gregorian calenā
dar with year 0 and with Universal Time (UT) ignoring leap seconds. Cutoffs are at the start of each year,
where the lower-bound timestamp is inclusive and the upper is exclusive; for example, -c 1970,2070 selects
transitions on or after 1970-01-01 00:00:00 UTC and before 2070-01-01 00:00:00 UTC. The default cutoff is
-500,2500.
-t [lotime,]hitime
Cut off interval output at the given time(s), given in decimal seconds since 1970-01-01 00:00:00 Coordinated
Universal Time (UTC). The timezone determines whether the count includes leap seconds. As with -c, the cutā
off's lower bound is inclusive and its upper bound is exclusive.
INTERVAL FORMAT
The interval format is a compact text representation that is intended to be both human- and machine-readable. It
consists of an empty line, then a line āTZ=stringā where string is a double-quoted string giving the timezone, a secā
ond line ā- - intervalā describing the time interval before the first transition if any, and zero or more following
lines ādate time intervalā, one line for each transition time and following interval. Fields are separated by single
tabs.
Dates are in yyyy-mm-dd format and times are in 24-hour hh:mm:ss format where hh<24. Times are in local time immediā
ately after the transition. A time interval description consists of a UT offset in signed ±hhmmss format, a time
zone abbreviation, and an isdst flag. An abbreviation that equals the UT offset is omitted; other abbreviations are
double-quoted strings unless they consist of one or more alphabetic characters. An isdst flag is omitted for stanā
dard time, and otherwise is a decimal integer that is unsigned and positive (typically 1) for daylight saving time
and negative for unknown.
In times and in UT offsets with absolute value less than 100 hours, the seconds are omitted if they are zero, and the
minutes are also omitted if they are also zero. Positive UT offsets are east of Greenwich. The UT offset -00 deā
notes a UT placeholder in areas where the actual offset is unspecified; by convention, this occurs when the UT offset
is zero and the time zone abbreviation begins with ā-ā or is āzzzā.
In double-quoted strings, escape sequences represent unusual characters. The escape sequences are \s for space, and
\", \\, \f, \n, \r, \t, and \v with their usual meaning in the C programming language. E.g., the double-quoted
string ā"CET\s\"\\"ā represents the character sequence āCET "\ā.
Here is an example of the output, with the leading empty line omitted. (This example is shown with tab stops set far
enough apart so that the tabbed columns line up.)
TZ="Pacific/Honolulu"
- - -103126 LMT
1896-01-13 12:01:26 -1030 HST
1933-04-30 03 -0930 HDT 1
1933-05-21 11 -1030 HST
1942-02-09 03 -0930 HWT 1
1945-08-14 13:30 -0930 HPT 1
1945-09-30 01 -1030 HST
1947-06-08 02:30 -10 HST
Here, local time begins 10 hours, 31 minutes and 26 seconds west of UT, and is a standard time abbreviated LMT. Imā
mediately after the first transition, the date is 1896-01-13 and the time is 12:01:26, and the following time interā
val is 10.5 hours west of UT, a standard time abbreviated HST. Immediately after the second transition, the date is
1933-04-30 and the time is 03:00:00 and the following time interval is 9.5 hours west of UT, is abbreviated HDT, and
is daylight saving time. Immediately after the last transition the date is 1947-06-08 and the time is 02:30:00, and
the following time interval is 10 hours west of UT, a standard time abbreviated HST.
Here are excerpts from another example:
TZ="Europe/Astrakhan"
- - +031212 LMT
1924-04-30 23:47:48 +03
1930-06-21 01 +04
1981-04-01 01 +05 1
1981-09-30 23 +04
...
2014-10-26 01 +03
2016-03-27 03 +04
This time zone is east of UT, so its UT offsets are positive. Also, many of its time zone abbreviations are omitted
since they duplicate the text of the UT offset.
LIMITATIONS
Time discontinuities are found by sampling the results returned by localtime(3) at twelve-hour intervals. This works
in all real-world cases; one can construct artificial time zones for which this fails.
In the -v and -V output, āUTā denotes the value returned by gmtime(3), which uses UTC for modern timestamps and some
other UT flavor for timestamps that predate the introduction of UTC. No attempt is currently made to have the output
use āUTCā for newer and āUTā for older timestamps, partly because the exact date of the introduction of UTC is probā
lematic.
SEE ALSO
tzfile(5), zic(8)
Time Zone Database zdump(8)