[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.1.4 空き埋めなどのフラグ

特に指定がないかぎり、date は通常、数値の入るフィールドの空きを 0 で埋める。従って、たとえば、数値による月名は常に二桁の数字として出力される。 しかし、ジ・エポック (Unix 紀元) 以来の経過秒数では、空きを埋めることはしない。 この秒数には決まった長さがないからである。

GNU の拡張として、以下に挙げるフラグの一つを ‘%’ の後ろに置くことができる (指定するしないは自由)。

-

(ハイフン) フィールドの空き埋めをしない。出力が人間に見せるためのものである場合に、役に立つ。

_

(アンダースコア、下線) 空白で空き埋めをする。 出力を一定の文字数にする必要があるが、0 で埋めたのでは見にくいという場合に、役に立つ。

0

(ゼロ) 変換指定子が普通なら空白で埋める場合にも、ゼロで空き埋めをする。

^

可能なら、大文字を使う。

#

可能なら、反対の文字を使う。通常大文字のフィールドは小文字になり、 小文字のフィールドは大文字になる。

空き埋めの例をいくつか挙げておく。

 
date +%d/%m -d "Feb 1"
⇒ 01/02
date +%-d/%-m -d "Feb 1"
⇒ 1/2
date +%_d/%_m -d "Feb 1"
⇒  1/ 2

これも GNU の拡張だが、フィールドの幅を 10 進数で指定することができる (数字は、上記のフラグがあれば、その後ろに置く)。 そのフィールドの出力の加工前の長さが、幅として指定した文字数より短い場合は、 右詰めにして、指定サイズにまで空き埋めした結果が書き出される。たとえば、‘%9B’ は、右詰めにした月の名前を 9 文字分のフィールドに表示する。

上記のフラグやフィールド幅の指定の後ろに、修飾子 (modifier) を付けることもできる (指定するしないは自由)。修飾子には、次のものがある。

E

現在のロケールが持つもう一つの日時表記を使用する。この修飾子は、‘%c’, ‘%C’, ‘%x’, ‘%X’, ‘%y’, ‘%Y’ に対して使用できる。 たとえば、日本語ロケールで ‘%Ex’ とすれば、元号による日付を表示するだろう。

O

現在のロケールが持つもう一つの数字表記を使用する。 この修飾子は、数値を表す変換指定子にしか使用できない。

書式が修飾子をサポートしていても、もう一つの表記が利用できない場合、 修飾子は無視される。


This document was generated on June 7, 2022 using texi2html 1.82.