# zdump

## 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 description
                  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 discontinuity.
                  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 followed 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 calendar 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 cutoff'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 second 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 immediately 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
           standard 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 denotes 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.  Immediately after
           the first transition, the date is 1896-01-13 and the time is
           12:01:26, and the following time interval 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 problematic.
    


* * *