aboutsummaryrefslogtreecommitdiff
path: root/zdump.8.txt
blob: bcdd99b03c9e4615fc120b51d1b04bee0becdd26 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
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.

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.

SEE ALSO
       tzfile(5), zic(8)

Time Zone Database                                                    zdump(8)