ZIC
Section: Maintenance Commands (8)
索引
jman
BSD mandoc
索引
名称
zic
- タイムゾーンコンパイラ
索引
書式
[--version
]
[-Dsv
]
[-d directory
]
[-g group
]
[-L leapsecondfilename
]
[-l localtime
]
[-m mode
]
[-p posixrules
]
[-u user
]
[-y command
]
[filename ...
]
索引
解説
ユーティリティはコマンド行で指定されたファイルを読み取り、その内容に従って
時刻変換情報のファイルを作成します。
filename
が
-
だった場合、標準入力から読み込みます。
以下のオプションがあります:
- --version
-
バージョン情報を出力して終了します。
- -D
-
自動的にはディレクトリを作成しません。
入力ファイルが出力先のファイルとして、
まだ存在していないディレクトリを指定していた場合には、デフォルトの動作では
ディレクトリの作成を試みます。
-D
が指定された場合には、
はそうせずに即座にエラーとします。
- -d directory
-
下記の標準ディレクトリではなく、指定されたディレクトリに時刻変換情報
ファイルを作成します。
- -g group
-
それぞれの出力ファイルを作成した後に、ファイルのグループオーナを指定された
group
(名前でも数字のグループ ID でも構いません)
に変更します。
- -L leapsecondfilename
-
指定された名前のファイルからうるう秒の情報を読み込みます。
このオプションが指定されなかった場合、
出力ファイルにはうるう秒の情報は記録されません。
- -l timezone
-
指定された
タイムゾーン
をローカルの時刻に使用します。
ユーティリティは、以下のリンク行が入力ファイルにあった場合と同様に働きます。
Link timezone localtime
( Fx ではローカルタイムゾーンは
/usr/share/zoneinfo/localtime
でなく
/etc/localtime
で指定されるので、
このアクションは何の効果も持たないことに注意してください)。
- -m mode
-
それぞれの出力ファイルを作成した後、ファイルのアクセス権を
mode
に変更します。
モードは数字とアルファベットのどちらでも構いません
( chmod(1)
参照)。
- -p timezone
-
POSIX 形式のタイムゾーンの環境変数を扱う場合に、指定されたタイムゾーンの
ルールを使用します。
ユーティリティは、以下のリンク行が入力ファイルにあった場合と同様に働きます。
Link timezone posixrules
- -u user
-
それぞれの出力ファイルを作成した後に、ファイルのオーナを指定された
user
(名前でも数字のユーザ ID でも構いません)
に変更します。
- -v
-
データファイル中の年が
time(3)
で表現できる年の範囲を超えていた場合、警告します。
- -s
-
出力ファイルに記録される時刻の値を、それが符号付きと扱われるか符号なしと
扱われるかに関係なく同じ値になるように制限します。
このオプションを使用することで SVVS と互換のファイルを生成できます。
- -y command
-
年のタイプをチェックする際に、
yearistype
の代わりに指定された
command
を用います(下記参照)。
入力の各行はフィールドから構成されます。
各フィールドは任意の数の空白文字により分離されます。先行する空白や、
行末の空白は無視されます。引用符で囲まれていない井桁文字 (#) から
その行の末尾まではコメントとして扱われます。
空白文字や井桁文字をフィールドの一部として使用する場合は、二重引用符
(") で囲みます。
(コメントを取り除いた後の)空白行は無視されます。
空白ではない行は、ルール行、ゾーン行、リンク行の 3 種類のいずれか
であるとみなされます。
ルール行は、
"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
(あるいはその短縮形)は、整数で表せる最大の年を示します。
ルールには、時刻の値として表す事ができない時刻を書くこともできますが、
表す事ができない時刻は無視されます。
これにより、時刻の値のタイプが異なるホスト間でルールを共用する事ができます。
- TO
-
ルールが適用される最後の年を指定します。
minimum
や
maximum
(上記)に加え、
単語
only
(あるいはその短縮形)
を、
FROM
フィールドの値を指すものとして使用することができます。
- TYPE
-
ルールが適用される年のタイプを指定します。
TYPE
が
-
だった場合、ルールは、
FROM
から
TO
までのその年を含む全ての年に適用されます。
TYPE
がそれ以外だった場合、
は、コマンド
yearistype year type
を実行して、年のタイプをチェックします。実行したコマンドの
終了ステータスが 0 だった場合は、その年が指定されたタイプであり、
終了ステータスが 1 だった場合は、その年が指定されたタイプではないと
判断します。
- IN
-
ルールが適用される月の名前を指定します。
月名は短縮形でも構いません。
- ON
-
ルールが適用される日を指定します。
指定できる形式は以下の通りです:
- 5
-
その月の 5 日
- lastSun
-
その月の最後の日曜日
- lastMon
-
その月の最後の月曜日
- Sun>=8
-
8 日以降の最初の日曜日
- Sun<=25
-
25 日以前の最後の日曜日
曜日は短縮形でも、フルスペルでも構いません。注意:
ON
フィールド内にスペースを含んではいけません。
- AT
-
ルールが適用される時刻を指定します。
指定できる形式は以下の通りです:
- 2
-
時
- 2:00
-
時と分
- 15:00
-
24 時間形式の時刻 (正午以降について)
- 1:28:14
-
時、分、秒
ここで、0 時は一日の始まりの深夜を意味し、
24時は一日の終わりの深夜を意味します。
これらの形式の最後に
`w
'
をつけると、指定した時刻がローカルの
``ウォールクロック''
(夏時間の適用される地域で、ローカルの標準時に、
夏時間の期間であればその修正を加えた時刻)
であり、
`s
'
をつけると、指定した時刻がローカルの
``標準時''
であり、
`u
'
(あるいは
`g
'
ないし
`z
'
をつけると、指定した時刻が世界標準時であることを示します。
これらの文字を指定していない場合は、ウォールクロックが適用されます。
- SAVE
-
ルールが有効な場合にローカルの標準時に加えられる量を指定します。
このフィールドの形式は
AT
フィールドと同じです
(この場合は、末尾に
`w
'
と
`s
'
を指定する事はできません)。
- LETTER/S
-
ルールが有効な場合にタイムゾーンの短縮形に用いられる
``変化部分''
(例えば、
``EST''
や
``EDT''
の
``S''
や
``D''
)
を指定します。
このフィールドが
-
だった場合、変化部分はヌル (NULL) になります。
ゾーン行は、
"Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]"
と言う形式です。例えば、
"Zone Australia/Adelaide 9:30 Aus CST 1971 Oct 31 2:00"
となります。ゾーン行を構成するフィールドは以下の通りです:
- NAME
-
タイムゾーンの名称です。
そのゾーンに対する時刻変換情報ファイルを作成する時の名前になります。
- GMTOFF
-
そのゾーンの標準時を得る時に UTC に加算される量です。
このフィールドの形式は、ルール行の
AT
および
SAVE
フィールドと同じです。
UTC から時刻を引く場合は、フィールドの最初にマイナスをつけます。
- RULES/SAVE
-
そのタイムゾーンに適用されるルールの名前、あるいは、ローカルの標準時に
加算される量を指定します。
このフィールドが
-
だった場合、そのタイムゾーンには常に標準時が適用されます。
- FORMAT
-
そのタイムゾーンで使用されるタイムゾーンの短縮形の形式を指定します。
文字列
%s
は、タイムゾーンの短縮形で用いられる
``変化部分''
を示します。
一方、
スラッシュ (/)
で標準時の短縮形と夏時間の短縮形を指定する事もできます。
- UNTIL
-
その場所で UTC との差あるいはルールが変化する時刻を指定します。
年、月、日、時刻を用いて指定できます。
このフィールドが指定された場合、その時刻になるまでは与えられた UTC との差
およびルールからタイムゾーンの情報が生成されます。
月、日、時刻はルールの IN, ON, AT カラムと同じ形式です。
続くカラムは省略可能で、
足りないカラムは最も早い可能な値がデフォルトとなります。
この次の行は
``継続''
行でなくてはなりません。この行は最初の
``Zone''
と NAME フィールドがない点を除いてはゾーン行と同一の形式で、その前の行の
UNTIL
フィールドで指定した時刻以降の情報を指定します。
この継続行にも
UNTIL
フィールドを指定する事ができ、その場合は、次の行に
その時刻以降の情報を指定します。
リンク行は、
"Link LINK-FROM LINK-TO"
と言う形式です。例えば、
"Link Europe/Istanbul Asia/Istanbul"
となります。
LINK-FROM
フィールドは、存在するゾーン行の
NAME
フィールドのいずれかと一致していなければなりません。
LINK-TO
フィールドはそのゾーンに対する別名として使用されます。
継続行以外は、入力中での行の順番に制限はありません。
うるう秒の定義ファイルの各行は以下のような形式になります:
"Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
例えば、
"Leap 1974 Dec 31 23:59:60 + S"
となります。
YEAR
MONTH
DAY
HH:MM:SS
フィールドは、うるう秒が起きる時刻を指定します。
CORR
フィールドは、
秒が加えられる場合は
``+''
で、秒がスキップされる場合は
``-''
となります。
R/S
フィールドは
他のフィールドで与えられるうるう秒の時刻が UTC である場合は、
``Stationary''
(またはその短縮形)で、
他のフィールドで与えられるうるう秒の時刻がローカルのウォールクロックである
場合は、
``Rolling''
(またはその短縮形)となります。
索引
注
ローカル時刻が複数のタイプとなる地域では、
作成されたファイルの最初の変化時刻を正しく設定するためには、
最初の変化時刻のルールの
AT
フィールドでローカルの標準時を使用する必要があります。
索引
関連ファイル
- /usr/share/zoneinfo
-
作成されたファイルが置かれる標準ディレクトリ
索引
関連項目
ctime(3),
tzfile(5),
zdump(8)
索引
Index
- 名称
-
- 書式
-
- 解説
-
- 注
-
- 関連ファイル
-
- 関連項目
-
Time: 07:07:47 GMT, January 12, 2009