<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">環境変数</anchor>
<dfn><code>TZ</code></dfn>
は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Unixにおける日時</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差の記述</anchor>を指定するものです。</p><section><h1>構文</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> 
std offset [ dst [offset],start[/time],end[/time] ]</p><p>っていう書式らしい。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">夏時間</anchor>の指定は実装が面倒だ。</p><p>offset は、地方時に offset だけ足したら UTC (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">協定世界時</anchor>)
になるってもの。 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2822の日付形式</anchor>とか多くの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差の記述</anchor>の方法と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">正負の符号</title></anchor>が逆になるので注意。</p></section><section><h1>例</h1><ol><li>JST-9 (cf. <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC2822の日付形式</anchor>では +0900)</li><li>EST+5</li><li>EST+5EDT</li></ol></section><section><h1>文脈</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end>
いろいろな <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX</anchor> 対応<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アプリケーション</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">環境変数<code xmlns="http://www.w3.org/1999/xhtml">TZ</code></anchor>
に従い動作します。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX</anchor> に対応していない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アプリケーション</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX</anchor>
環境であっても不完全にしか対応していなかったり、
無視したりすることがあります。</p><example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Java</anchor> を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX</anchor> 環境で実行しても、完全には対応していないようです。</p></example><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">環境変数<code xmlns="http://www.w3.org/1999/xhtml">TZ</code></anchor> の値の構文が他の場面で使われることもあります。</p><figure class="short list"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX時間帯</anchor>の一部または全部を利用したもの</figcaption><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">POSIX</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">tzdata</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">PostgreSQL</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">T2EX</anchor> <dfn>タイムゾーン文字列</dfn> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;6</anchor-internal></src> </li><li><code>Timezone:</code></li></ul></figure></section><section><h1>歴史</h1><p><sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> 前史や API については<anchor>Unixにおける日時</anchor> </sw-see></p><ul><li>tzset(3) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.linux.or.jp/JM/html/LDP_man-pages/man3/tzset.3.html">http://www.linux.or.jp/JM/html/LDP_man-pages/man3/tzset.3.html</anchor-external></li><li>_tzset <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.microsoft.com/JAPAN/developer/library/vccore/_crt__tzset.htm">http://www.microsoft.com/JAPAN/developer/library/vccore/_crt__tzset.htm</anchor-external></li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <cite xml:lang="en">POSIX and Olson time zone formats</cite>
( (<time>2016-06-15 18:40:50 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.ibm.com/developerworks/aix/library/au-aix-posix/">http://www.ibm.com/developerworks/aix/library/au-aix-posix/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite>Time::Zone - search.cpan.org</cite>
(<time>2016-10-10 11:03:27 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://search.cpan.org/dist/TimeDate/lib/Time/Zone.pm">http://search.cpan.org/dist/TimeDate/lib/Time/Zone.pm</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite xml:lang="en">PostgreSQL: Documentation: 9.6: Date/Time Types</cite>
(<time>2017-03-10 17:55:16 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-INTERVAL-INPUT">https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-INTERVAL-INPUT</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">T2EX</anchor> (<time>2015-03-28 15:58:08 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.tron.org/ja/wp-content/themes/dp-magjam/pdf/specifications/ja/TEF020-S009-02.00.00_ja.pdf#page=107">http://www.tron.org/ja/wp-content/themes/dp-magjam/pdf/specifications/ja/TEF020-S009-02.00.00_ja.pdf#page=107</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <cite xml:lang="en">Document vestigial aspects of the POSIX API</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">eggert</anchor>著, <time>2018-01-27 03:06:13 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/eggert/tz/commit/240c8d6e29e3069d72bec323910ee6800a6155d1">https://github.com/eggert/tz/commit/240c8d6e29e3069d72bec323910ee6800a6155d1</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <cite xml:lang="en">Clarify extensions to POSIX model</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">eggert</anchor>著, <time>2018-02-15 07:25:37 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/eggert/tz/commit/63d30205737f4ba165f2a3cebadee90a6651438f">https://github.com/eggert/tz/commit/63d30205737f4ba165f2a3cebadee90a6651438f</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite xml:lang="en">Clarify that EST5EDT is problematic in POSIX</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">eggert</anchor>著, <time>2018-05-22 02:05:47 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/eggert/tz/commit/f7cef15920aa7ef2094dfd742c7fd54564046c8a">https://github.com/eggert/tz/commit/f7cef15920aa7ef2094dfd742c7fd54564046c8a</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> <strong>[</strong>tz-announce<strong>]</strong> 2018f release of tz code and data available</cite>
(<time>2018-10-24 01:27:07 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2018-October/027058.html">https://mm.icann.org/pipermail/tz/2018-October/027058.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> Please remove tzdata2018f</cite>
(<time>2019-02-23 05:09:31 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2019-February/027642.html">https://mm.icann.org/pipermail/tz/2019-February/027642.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="en">RFC 8536 - The Time Zone Information Format (TZif)</cite>
(<time>2019-02-13 09:21:07 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc8536#section-3.3.1">https://tools.ietf.org/html/rfc8536#section-3.3.1</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> Java &amp; Rearguard</cite>
(<time>2019-06-01 18:51:30 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2019-June/028025.html">https://mm.icann.org/pipermail/tz/2019-June/028025.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> Java &amp; Rearguard</cite>
(<time>2019-06-03 17:51:05 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2019-June/028040.html">https://mm.icann.org/pipermail/tz/2019-June/028040.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <cite>0001253: clarify that &quot;alternative time&quot; means tm_isdst is positive - Austin Group Defect Tracker</cite>
(<time>2019-06-04 09:06:12 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://austingroupbugs.net/view.php?id=1253">http://austingroupbugs.net/view.php?id=1253</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> Extend POSIX TZ to allow transition times outside 00-24 range, permanent DST</cite>
(<time>2019-06-04 09:24:22 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2019-June/028050.html">https://mm.icann.org/pipermail/tz/2019-June/028050.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <cite>0001252: Extend TZ to allow times outside 00-24 range, permanent DST - Austin Group Defect Tracker</cite>
(<time>2019-06-04 09:26:29 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://austingroupbugs.net/view.php?id=1252">http://austingroupbugs.net/view.php?id=1252</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> More on EU/UK/Brexit clock changes</cite>
(<time>2020-02-15 15:55:08 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2020-February/028835.html">https://mm.icann.org/pipermail/tz/2020-February/028835.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <cite><strong>[</strong>tz<strong>]</strong> Support for Etc/GMT -style zones ids with partial hours</cite>
(<time>2020-10-21T21:32:04.000Z</time>, <time>2020-10-22T01:40:37.057Z</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://mm.icann.org/pipermail/tz/2020-October/029396.html">https://mm.icann.org/pipermail/tz/2020-October/029396.html</anchor-external></p></section></body></html>