環境変数の先頭のパス区切り文字は何をしますか?

環境変数の先頭のパス区切り文字は何をしますか?

私が読んでいるファイル使用されているプログラムで不要なシステムコールをTZ避けるために、この変数を設定することをお勧めします。次の構文を使用します。statlocaltime

TZ=:/etc/localtime

文書に記載されているトリックは機能しますが、コロンなしで機能しますTZ=/etc/localtime

ここで目的は何ですか:

ベストアンサー1

TZこれは変数にとって特別なことであることがわかりました。この動作は次のように記録されます。man tzset(強調):

2 番目の形式は、タイムゾーン情報をファイルから読み取る必要があることを指定します。

:[filespec]

filespecが省略された場合、またはその値を解釈できない場合は、協定世界時(UTC)が使用されます。 filespec が与えられると、タイムゾーン情報を読み取る tzfile(5) 形式の別のファイルを指定します。 filespecが "/"で始まらない場合、filespecはシステムタイムゾーンディレクトリに基づいています。 コロンを省略すると、上記の各TZ形式が試行されます。

以下はニュージーランドの例です。

TZ=":Pacific/Auckland"

上記の内容を正しく理解すると、両方が言ったように機能しますが、省略すると、TZ=:/etc/localtimeシステムは提供された内容を受け入れるさまざまな形式に解析しようとします。私TZ=/etc/localtime:考えるこれにはリアルタイム定義が含まれます(同じマニュアルページの追加を参照)。

したがって、theを使用することは、提供する内容を解釈することを気にせず、直接ファイルとして処理することを意味し:ます。tzset

おすすめ記事