aboutsummaryrefslogblamecommitdiff
path: root/ja_JP.eucJP/man/man3/tzset.3
blob: 1f7d310f1a4ee064978ca5c6534dd00d0d0fb97c (plain) (tree)



































                                                                              
             

























































































































































































































































































                                                                             
.\" Copyright (c) 1989, 1991, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" This code is derived from software contributed to Berkeley by
.\" Arthur Olson.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"	@(#)tzset.3	8.2 (Berkeley) 11/17/93
.\"
.\" $FreeBSD$
.Dd November 17, 1993
.Dt TZSET 3
.Os
.Sh 名称
.Nm tzset ,
.Nm tzsetwall
.Nd 時間変換情報の初期化
.Sh 書式
.Fd #include <time.h>
.Ft void
.Fn tzset void
.Ft void
.Fn tzsetwall void
.Sh 解説
.Fn tzset
関数は、ライブラリルーチン
.Xr localtime 3
により使用される
時間変換情報を初期化します。環境変数
.Ev TZ
は、この変換をどのように行うかを指定します。
.Pp
環境に
.Ev TZ
が現れていない場合は、
.Xr tzfile 5 
形式のファイル
.Pa /etc/localtime
により指定されたローカル壁時計時間に最も近い近似値が用いられます。
.Pp
環境に
.Ev TZ
が現れているがその値が null ストリングである場合には、
世界標準時刻 
.Pq Tn UTC
が用いられます ( うるう秒補正なしで )。
.Pp
環境に
.Ev TZ
が現れ、その値がコロン
.Pq Ql \:
で始まる場合は、それ以降の値が
.Xr tzfile 5 
形式ファイルのパス名として用いられ、そこから時間変換情報が読み
込まれます。パス名の最初のキャラクタがスラッシュ
.Pq Ql /
である場合は、それは
絶対パス名として用いられます。それ以外の場合は、そのパス名はシステムの
時間変換情報ディレクトリに対する相対パス名として用いられます。
.Pp
その値がコロンで始まらない場合は、それはまず ( 上に
説明したように ) 時間変換情報の読み取り用ファイルのパス名として
用いられます。そのファイルが読めない場合は、その値は時間変換情報の
直接的仕様 ( 形式は下に説明 ) であると解釈されます。
.Pp
環境変数
.Ev TZ
が
.Xr tzfile 5 
形式ファイルを指定しておらず、直接的仕様と解釈できない場合は、
.Tn UTC
が用いられます。
.Pp
.Fn tzsetwall
関数は、ローカル壁時計時間に最も近い近似値を返すように調整を行います。
.Pp
仕様形式
.Ev TZ
を時間変換情報の仕様として直接使う場合は、次のようなシンタックスを
持つ必要があります ( 空白は読みやすくするために入れてあります ): 
.Bd -filled -offset indent
.Em std offset Bo
.Em dst Bo
.Em offset
.Bc
.Bo
.No , Em rule
.Bc
.Bc
.Ed
.Pp
ここで:
.Bl -tag -width std_and_dst -offset indent
.It Em std と Em dst
標準時間帯 ( 
.Em std
) または夏時間帯 (
.Em dst
) の指示子である 3 以上のバイト。必要なのは
.Em std
のみです。
.Em dst
がない場合は、この地域では
夏時間が適用されません。大文字と小文字の区別は明示的に許可されます。先頭の
コロン 
.Pq Ql \: ,
小数点、コンマ
.Pq Ql \&, ,
マイナス
.Pq Ql \- ,
プラス
.Pq Ql + ,
および 
.Tn ASCII
.Dv NUL
以外のキャラクタであれば使えます。
.Pp
.It Em offset
世界標準時を計算するためにローカル時間に加えるべき値を示します。
.Em offset
は、次のような形式を持ちます: 
.Bd -unfilled -offset indent
.Em hh Bo
.Pf \&: Em mm
.Bo
.Pf \&: Em ss
.Bc
.Bc
.Ed
.Pp
分
.Pq Em mm
および秒
.Pq Em ss
を付けるのは任意です。時
.PQ Em hh
は必要で、 1 桁の数字でも構いません。
.Em std
に続く
.Em offset
は必要です。
.Em dst
の後に
.Em offset
がない場合は、夏時間は標準時間よりも 1 時間進むものとみなします。 1 桁
以上の数字が使えます。値は常に十進数であると解釈されます。
時は 0 から 24 までの間、
また分 ( および秒 ) を指定する場合は 0 から 59 までの間でなければなりません。
先頭に
.Pq Ql \-
が付いている場合は、時間帯は本初子午線の東となります。それ以外の
場合は、西となります ( 任意で先頭に
.Pq Ql +
を付けて指定しても構いません ) 。
.Pp
.It Em rule
いつ夏時間に変更するか、またいつ夏時間から元に戻すかを示します。
.Em rule
は次のような形式を持ちます:
.Bd -filled -offset indent
.Em date/time,date/time
.Ed 
.Pp
ここで、最初の
.Em date
は標準時間から夏時間への変更がいつ起きるかを表し、 2 番目の
.Em date
はいつ元に戻すかを表します。それぞれの
.Em time
フィールドは、
現在のローカル時間からもう一方の時間への変更をいつ行うかを表します。
.Pp
.Em date
の形式は、次のいずれかです:
.Bl -tag -width "M.m.n.d"
.It Sy J Em n
ユリウス日
.Em n
(1 \*(Le
.Em n
\*(Le 365)。
うるう日は数えません。
すなわち、
うるう年を含めたすべての年で 2 月 28 日は 59 日目、
3 月 1 日は 60 日目になります。ときどきやってくる 2 月 29 日を明示的に
参照することはできません。
.It Em n
0 を基準にしたユリウス日
(0 \*(Le
.Em n
\*(Le 365 )。
うるう日は数えられ、 2 月 29 日を参照することは可能です。
.It Sy M  Em m.n.d
ある年の
.Em m
番目の月の第
.Em n
週の
.Em d
(0 \*(Le
.Em d
\*(Le 6 )
番目の曜日
(1 \*(Le
.Em n
\*(Le 5),
(1 \*(Le
.Em m
\*(Le 12)。
ここで、第 5 週とは 第 4 週目または第 5 週目に起きる
.Do 
第
.Em m
月の最後の
.Em d
番目の日
.Dc
を意味します。第 1 週は、
.Em d
番目の日が起きる最初の週です。第 0 日は日曜日です。
.Pp
.Em time
は、先頭の符号
.Pq Ql \-
または
.Pq Ql +
が許されないこと以外は、
.Em offset
と同じ形式を持ちます。
.Em time
を与えない場合は、
.Sy 02:00:00
がデフォルト値となります。
.El
.Pp
.Ev TZ
仕様に
.Em rule
がない場合は、システム時間変換情報ディレクトリの中の
.Xr tzfile 5 
形式ファイル
.Em posixrules
により指定された規則が用いられ、標準時間および夏時間の
.Tn UTC
からのオフセットは
.Ev TZ
の
.Em offset
値で指定された値により置き換えられます。
.El
.Pp
System V Release 3.1 との互換性を持たせるため、
.Em rule
を残りの仕様から区別するためにセミコロン
.Pq Ql \;
を使うこともできます。
.Sh ファイル
.Bl -tag -width /usr/share/zoneinfo/posixrules -compact
.It Pa /etc/localtime
ローカル時間帯ファイル
.It Pa /usr/share/zoneinfo
時間帯ディレクトリ
.It Pa /usr/share/zoneinfo/posixrules
.Tn POSIX
スタイルの
.Tn TZ
に関する規則
.It Pa /usr/share/zoneinfo/GMT
.Tn UTC
うるう秒
.El
.Pp
.Pa /usr/share/zoneinfo/GMT
ファイルが存在しない場合は、
.Tn UTC
うるう秒は
.Pa /usr/share/zoneinfo/posixrules
からロードされます。
.Sh 参照
.Xr date 1 ,
.Xr gettimeofday 2 ,
.Xr ctime 3 ,
.Xr getenv 3 ,
.Xr time 3 ,
.Xr tzfile 5
.Sh 歴史
.Fn tzset
および
.Fn tzsetwall
関数は、最初に
.Bx 4.4
に現れました。