other versions
other languages
ZIC(8) | Linux System Administration | ZIC(8) |
名前¶
zic - タイムゾーンコンパイラ書式¶
zic [ -v ] [ -d directory ] [ -l localtime ] [ -p posixrules ] [ -L leapsecondfilename ] [ -s ] [ -y command ] [ filename ... ]説明¶
zic はコマンドラインで指定されたファイル (複数指定可) からテキストを読み、 時刻変換情報ファイルを生成する。ファイル名も読み込みテキストで指定しておく。 filename が - の場合は、標準入力から読み込む。 以下のオプションを指定できる:- -d directory
- 時刻変換情報ファイルを生成するディレクトリを、標準のディレクトリ (以下を参照) ではなく指定したディレクトリにする。
- -l timezone
- 指定したタイムゾーンをローカルタイムに用いる。
zic
は入力に以下の書式のリンク行が含まれているかのように振る舞う。
- -p timezone
- POSIX
形式のタイムゾーン環境変数を扱うとき、
指定したタイムゾーンのルールを用いる。
zic
は入力に以下の書式のリンク行が含まれているかのように振る舞う。
- -L leapsecondfilename
- 閏秒情報を与えられた名前のファイルから読み込む。 このオプションが指定されなかった場合には、 出力ファイルには閏秒の情報は含まれない。
- -v
- データファイルに現れる年が time(2) で表記できる範囲を越えている場合に文句を言う。
- -s
- 出力ファイルに格納される時刻の値を、 signed で評価しても unsigned で 評価しても同じ値になるような範囲に制限する。 このオプションを使うと SVVS 互換なファイルを生成することができる。
- -y command
- 年の型のチェック (以下参照) に yearistype ではなく指定した command を用いる。
ルール行を構成するフィールドは以下の通り:Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S例:Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
- NAME
- このルールが所属するルールセットの名前を与える (任意)。
- FROM
- このルールが適用される最初の年を与える。 任意の整数を年として与えることができる。グレゴリオ暦が仮定される。 minimum (あるいはその短縮) は整数表記できる最小の年を意味する。 maximum (あるいはその短縮) は整数表記できる最大の年を意味する。 ルールでは時刻値 (time value) では表記できない時刻も記述できる。 表記できない時刻は無視される。つまりルールは 異なった時刻値の型を持つホスト間でポータブルである。
- TO
- このルールが適用される最後の年を与える。 minimum と maximum (上述) に加え、 only (またはその短縮) を用いることができ、この場合は FROM フィールドに指定した値と同じ値が用いられる。
- TYPE
- ルールの適用される年のタイプを与える。
TYPE が -
であれば、このルールは
FROM から TO
に挟まれた
(両端含む)
全ての年に適用される。
TYPE
がそれ以外の場合には、
zic
は以下のコマンドを実行して年のタイプをチェックする。
yearistype year type
- IN
- ルールが効力を持つ月の名前を指定する。 月名は短縮できる。
- ON
- ルールが効力を持つ日の名前を指定する。
以下のような書式を認識する:
- AT
- ルールが効力を持つ一日のうちの時刻を与える。
以下のような書式を認識する:
- SAVE
- ルールが効力を持っているとき、ローカルな標準時刻に追加すべき 時間の量を与える。このフィールドの書式は AT フィールドのものと同じである (ただしもちろん w と s の後置文字は用いられない)。
- LETTER/S
- このルールが効力を持っている場合に用いられるタイムゾーン短縮型の "可変部 (variable part)" を与える (例えば "EST" や "EDT" における "S" や "D" など)。 このフィールドが - であった場合には、 可変部は存在しない。
Zone NAME UTCOFF RULES/SAVE FORMAT [UNTIL]ゾーン行を構成するフィールドは以下の通り:例:Zone Australia/Adelaide 9:30 Aus CST 1971 Oct 31 2:00
- NAME
- タイムゾーンの名前。この名前がこのゾーンの時刻変換情報ファイルを 生成するときに用いられる。
- UTCOFF
- このゾーンの標準時刻を得るために、 UTC に加える時間。 このフィールドの書式は、ルール行の AT および SAVE フィールドのものと同じである。時間を UTC から引く必要がある場合は マイナス記号を前置する。
- RULES/SAVE
- タイムゾーンに適用されるルールの名前か、あるいは ローカル標準時刻に加えるべき時間の量を指定する。 このフィールドが - ならば、常に標準時刻がこのゾーンに対して用いられる。
- FORMAT
- このタイムゾーンに対するタイムゾーン短縮名の書式。 2 文字の文字列 %s を用いて、どこが "可変部" になるかを指定できる。あるいはスラッシュ文字 (/) を用いて 標準の短縮名とサマータイム短縮名を区切ることができる。
- UNTIL
- UTC に対するオフセットか、その場所におけるルールが変更される時刻。 年・月・日・時刻で指定する。 これが指定された場合には、タイムゾーンの情報は与えられている UTC オフセットから生成され、ルールは指定時刻になると変更される。 月・日・時刻は、ルールの IN, ON, AT カラムと同じ書式で指定する。 この後に続くカラムは省略できる。 省略されたカラムに対しては、 可能性のあるもののうち最も早い値がデフォルトで用いられる。
- この行には必ず "継続"(continuation) 行が続く。 継続行はゾーン行と同じ書式を持つが、 "Zone" と名前は省略される。なぜなら継続行は直前の行の UNTIL フィールドで指定された時刻以降の情報を与えるものだからである。 継続行にもゾーン行と同じように UNTIL フィールドを指定することができ、この場合はその次の行が さらなる継続行になることとなる。
Link LINK-FROM LINK-TOLINK-FROM フィールドはゾーン行の NAME フィールドが記述される。 LINK-TO フィールドはそのゾーンの別名である。 Except for continuation lines, lines may appear in any order in the input. ファイル中で閏秒を記述する行は以下のような書式を持つ。例:Link Europe/Istanbul Asia/Istanbul
YEAR, MONTH, DAY, HH:MM:SS は閏秒の生じた瞬間を示す。 CORR フィールドには、秒が挿入された場合 "+" を、秒がスキップされた場合 "-" を指定する。 R/S フィールドには、他のフィールドが記述している閏秒の時刻が UTC ならば "Stationary" (あるいはその短縮形) を、ローカルな壁時計時刻なら "Rolling" (あるいはその短縮形) を指定する。Leap YEAR MONTH DAY HH:MM:SS CORR R/S例:Leap 1974 Dec 31 23:59:60 + S
ファイル¶
/usr/local/etc/zoneinfo 生成されたファイル用の標準ディレクトリ注意¶
二つ以上のローカルタイムを持っている地域では、 ローカルな標準時を 最も早い方の時刻変換ルールの AT フィールドに用いる必要があるだろう。さもないと コンパイルされたファイルに記録された最も早い変換時刻が 正しいことが保証されない。関連項目¶
tzfile(5), zdump(8)この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 3.41 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。2010-02-25 |