2010年6月25日金曜日

strftimeの書式一覧。 Gawk on Windows編 - AWK

AWKのstrftime関数 ▲
互換性の欄は、他のWindows用AWK処理系(Gawk for Windows 3.1.6 / mawk MBCS (32bit版) 1.3.3)で確認しました。「△ = 表現が異なる処理系がある」「× = サポートしていない処理系がある」です。

サポートしている strftime 書式(機能別)
サポートしている strftime 書式(ABC順)
書式調査資料

Gawk on Windows 3.1.7がサポートしている strftime 書式(機能別)
書式(機能別)実行結果の例互換性説明
-- %文字 --
%%[%]○パーセント記号
-- 年、月、日 --
%Y[2001]○西暦年
%m[02]○月(01-12)
%d[03]○日(01-31)
%y[01]○西暦年の下2桁(00-99)
%B[2月]△月名
%b[2]△月名の省略形
%j[034]○年の初めから数えた日数(001-366)
-- 時、分、秒 --
%H[04]○時。24時間表記(00-23)
%M[05]○分(00-59)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%I[04]○時。12時間表記(01-12)
%p[午前]△午前/午後の大文字
-- 曜日、週番号 --
%w[6]○曜日番号。日曜日が0(0-6)
%A[土曜日]△曜日
%a[土]△曜日の省略形
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
-- タイムゾーン --
%Z[東京 (標準時)]×タイムゾーン。名前または省略形。不明な場合は空です。
-- 組み合わせ --
%x[2001/02/03]△一般的な年月日表記
%X[4:05:06]△一般的な時刻表記。年月日は含みません。デジタル時計では、この表記(分秒だけ前ゼロ)を良く見かけます。
%c[2001/02/03 4:05:06]△一般的な年月日と時刻

Gawk on Windows 3.1.7がサポートしている strftime 書式(ABC順)
書式(ABC順)実行結果の例互換性説明
%A[土曜日]△曜日
%a[土]△曜日の省略形
%B[2月]△月名
%b[2]△月名の省略形
%c[2001/02/03 4:05:06]△一般的な年月日と時刻
%d[03]○日(01-31)
%H[04]○時。24時間表記(00-23)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%M[05]○分(00-59)
%m[02]○月(01-12)
%p[午前]△午前/午後の大文字
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[4:05:06]△一般的な時刻表記。年月日は含みません。デジタル時計では、この表記(分秒だけ前ゼロ)を良く見かけます。
%x[2001/02/03]△一般的な年月日表記
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]×タイムゾーン。名前または省略形。不明な場合は空です。
%%[%]○パーセント記号

# --------------------------------------------------------------
# 基礎資料。strftime書式調査テスト結果
#
テストに使った書式は、各awk処理系の説明書の他、C言語の同名関数で見かけた書式も混ぜました。
◎の意味は、「日本語対応として望ましい」です。
色が付いている所は、未サポート、もしくは正しいとされる表記が複数あって、互換性に乏しい所です。


調査したAWK処理系 = Gawk on Windows 3.1.7 (2009年11月24日版)
OS = Windows XP SP3 日本語版
調査に使った関数 = strftime
環境変数の追加設定無し = TZやLC_系環境変数の指定無し

# -------------------------------
# テスト1。2001年2月3日4時5分6秒 UTC+9
# -------------------------------
書式(ABC順)実行結果判定説明
%A[土曜日]◎曜日(例。Wednesday)
%a[土]◎曜日の省略形(例。Wed)
%B[2月]◎月名(例。August)
%b[2]△月名の省略形(例。Aug)
%C[]×世紀。西暦年から下位2桁を除去
%c[2001/02/03 4:05:06]◎一般的な年月日と時刻
%D[]×米国で一般的な年月日(%m/%d/%y)
%d[03]○日(01-31)
%e[]×月。1桁の時は左に半角空白( 1-31)
%F[]×年月日。ISO 8601形式。%Y-%m-%d
%G[]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[]×年。ISO 8601週単位表記の下2桁(00-99)
%H[04]○時。24時間表記(00-23)
%h[]×%bと同じです。月名の省略形(例。Aug)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%k[]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[05]○分(00-59)
%m[02]○月(01-12)
%n[]×改行
%P[]×午前/午後の小文字
%p[午前]◎午前/午後の大文字
%R[]×24時間表記の時分(%H:%M)
%r[]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[]×基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[]×24 時間表記の時分秒 (%H:%M:%S)
%t[]×タブ文字
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[]×曜日番号。月曜日が1(1-7)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[4:05:06]◎一般的な時刻表記。年月日は含みません。デジタル時計では、この表記(分秒だけ前ゼロ)を良く見かけます。
%x[2001/02/03]◎一般的な年月日表記
%V[]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[]×VMSフォーマットの日付。09-MAR-2039
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]○タイムゾーン。名前または省略形。不明な場合は空です。
%z[東京 (標準時)]×タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[C]×拡張表現。元号(無い時は%Cと同じです)
%Ec[c]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[X]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[x]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[Y]×拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[y]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[d]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[e]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[H]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[I]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[M]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[m]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[S]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[U]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[u]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[V]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[W]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[w]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[y]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)

# -------------------------------
# テスト2。2010年1月1日23時59分59秒 UTC+9
# -------------------------------
書式(ABC順)実行結果判定説明
%A[金曜日]◎曜日(例。Wednesday)
%a[金]◎曜日の省略形(例。Wed)
%B[1月]◎月名(例。August)
%b[1]△月名の省略形(例。Aug)
%C[]×世紀。西暦年から下位2桁を除去
%c[2010/01/01 23:59:59]◎一般的な年月日と時刻
%D[]×米国で一般的な年月日(%m/%d/%y)
%d[01]○日(01-31)
%e[]×月。1桁の時は左に半角空白( 1-31)
%F[]×年月日。ISO 8601形式。%Y-%m-%d
%G[]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[]×年。ISO 8601週単位表記の下2桁(00-99)
%H[23]○時。24時間表記(00-23)
%h[]×%bと同じです。月名の省略形(例。Aug)
%I[11]○時。12時間表記(01-12)
%j[001]○年の初めから数えた日数(001-366)
%k[]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[59]○分(00-59)
%m[01]○月(01-12)
%n[]×改行
%P[]×午前/午後の小文字
%p[午後]◎午前/午後の大文字
%R[]×24時間表記の時分(%H:%M)
%r[]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[59]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[]×基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[]×24 時間表記の時分秒 (%H:%M:%S)
%t[]×タブ文字
%U[00]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[]×曜日番号。月曜日が1(1-7)
%W[00]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[5]○曜日番号。日曜日が0(0-6)
%X[23:59:59]○一般的な時刻表記。年月日は含みません。
%x[2010/01/01]◎一般的な年月日表記
%V[]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[]×VMSフォーマットの日付。09-MAR-2039
%Y[2010]○西暦年
%y[10]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]○タイムゾーン。名前または省略形。不明な場合は空です。
%z[東京 (標準時)]×タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[C]×拡張表現。元号(無い時は%Cと同じです)
%Ec[c]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[X]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[x]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[Y]×拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[y]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[d]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[e]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[H]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[I]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[M]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[m]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[S]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[U]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[u]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[V]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[W]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[w]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[y]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)


==
関連ページ:
    ▼strftime - 時刻を文字列に変換する
    ▼AWKの時刻取得機能(▼ABC順)
    ▼AWKプログラムを書く(▼ABC順)
    ▼AWK
    ▼制作メモ
    ▼目次
    > strftimeの書式一覧。 Gawk for Windows編
    strftimeの書式一覧。 mawk MBCS (32bit版)編
(2010年6月26日追加。書式の説明文と誤記訂正)

strftimeの書式一覧。 mawk MBCS (32bit版)編 - AWK

AWKのstrftime関数 ▲
互換性の欄は、他のWindows用AWK処理系(Gawk on Windows 3.1.7 / Gawk for Windows 3.1.6)で確認しました。「△ = 表現が異なる処理系がある」「× = サポートしていない処理系がある」です。

サポートしている strftime 書式(機能別)
サポートしている strftime 書式(ABC順)
書式調査資料

mawk MBCS (32bit版) 1.3.3がサポートしている strftime 書式(機能別)
書式(機能別)実行結果の例互換性説明
-- %文字、特殊文字 --
%%[%]○パーセント記号
%t[    ]×タブ文字
%n[
]
×改行
-- 年、月、日、世紀 --
%Y[2001]○西暦年
%m[02]○月(01-12)
%d[03]○日(01-31)
%C[20]×世紀。西暦年から下位2桁を除去
%y[01]○西暦年の下2桁(00-99)
%B[February]△月名
%b[Feb]△月名の省略形
%j[034]○年の初めから数えた日数(001-366)
%Oy[01]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)
%EC[20]×拡張表現。元号(無い時は%Cと同じです)
%EY[2001]×拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[01]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Om[02]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%h[Feb]×%bと同じです。月名の省略形(例。Aug)
%e[ 3]×日。1桁の時は左に半角空白( 1-31)
%Oe[ 3]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%Od[03]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
-- 時、分、秒 --
%H[04]○時。24時間表記(00-23)
%M[05]○分(00-59)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%I[04]○時。12時間表記(01-12)
%p[AM]△午前/午後の大文字
%k[ 4]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%OH[04]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%OS[06]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
-- 曜日、週番号 --
%A[Saturday]△曜日
%a[Sat]△曜日の省略形
%w[6]○曜日番号。日曜日が0(0-6)
%u[6]×曜日番号。月曜日が1(1-7)
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%V[05]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%Ow[6]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Ou[6]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OU[04]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%OW[05]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%OV[05]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
-- タイムゾーンは、非サポートです --
-- 組み合わせ(米国仕様) --
%x[Sat Feb 3 2001]△一般的な年月日表記
%Ex[Sat Feb 3 2001]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%D[02/03/01]×米国で一般的な年月日(%m/%d/%y)
%v[03-FEB-2001]×VMSフォーマットの日付(例 09-MAR-2039)
%X[04:05:06]△一般的な時刻表記。年月日は含みません。
%EX[04:05:06]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%T[04:05:06]×24 時間表記の時分秒 (%H:%M:%S)
%r[04:05:06 AM]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%R[04:05]×24時間表記の時分(%H:%M)
%c[Sat Feb 3 04:05:06 2001]△一般的な年月日と時刻
%Ec[Sat Feb 3 04:05:06 2001]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)


mawk MBCS (32bit版) 1.3.3がサポートしている strftime 書式(ABC順)
書式(ABC順)実行結果の例互換性説明
%A[Saturday]△曜日
%a[Sat]△曜日の省略形
%B[February]△月名
%b[Feb]△月名の省略形
%C[20]×世紀。西暦年から下位2桁を除去
%c[Sat Feb 3 04:05:06 2001]△一般的な年月日と時刻
%D[02/03/01]×米国で一般的な年月日(%m/%d/%y)
%d[03]○日(01-31)
%e[ 3]×日。1桁の時は左に半角空白( 1-31)
%EC[20]×拡張表現。元号(無い時は%Cと同じです)
%Ec[Sat Feb 3 04:05:06 2001]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[04:05:06]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[Sat Feb 3 2001]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[2001]×拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[01]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%H[04]○時。24時間表記(00-23)
%h[Feb]×%bと同じです。月名の省略形(例。Aug)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%k[ 4]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[05]○分(00-59)
%m[02]○月(01-12)
%n[
]
×改行
%Od[03]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 3]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[04]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[02]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[06]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[04]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[6]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[05]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[05]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[6]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[01]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)
%p[AM]△午前/午後の大文字
%R[04:05]×24時間表記の時分(%H:%M)
%r[04:05:06 AM]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%T[04:05:06]×24 時間表記の時分秒 (%H:%M:%S)
%t[    ]×タブ文字
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[6]×曜日番号。月曜日が1(1-7)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[04:05:06]△一般的な時刻表記。年月日は含みません。
%x[Sat Feb 3 2001]△一般的な年月日表記
%V[05]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[03-FEB-2001]×VMSフォーマットの日付(例 09-MAR-2039)
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%%[%]○パーセント記号


# --------------------------------------------------------------
# 基礎資料。strftime書式調査テスト結果
#
テストに使った書式は、各awk処理系の説明書の他、C言語の同名関数で見かけた書式も混ぜました。
◎の意味は、「日本語対応として望ましい」です。
色が付いている所は、未サポート、もしくは正しいとされる表記が複数あって、互換性に乏しい所です。

調査したAWK処理系 = mawk MBCS (32bit版) 1.3.3 (1998年8月22日版)
OS = Windows XP SP3 日本語版
調査に使った関数 = strftime
環境変数の追加設定無し = TZやLC_系環境変数の指定無し

# -------------------------------
# テスト1。2001年2月3日4時5分6秒 UTC+9 = 981140706
# -------------------------------
書式(ABC順)実行結果判定説明
%A[Saturday]○
米国
曜日
%a[Sat]○
米国
曜日の省略形
%B[February]○
米国
月名
%b[Feb]○
米国
月名の省略形
%C[20]○世紀。西暦年から下位2桁を除去
%c[Sat Feb 3 04:05:06 2001]○
米国
一般的な年月日と時刻
%D[02/03/01]○米国で一般的な年月日(%m/%d/%y)
%d[03]○日(01-31)
%e[ 3]○日。1桁の時は左に半角空白( 1-31)
%F[%F]×年月日。ISO 8601形式。%Y-%m-%d
%G[%G]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[%g]×年。ISO 8601週単位表記の下2桁(00-99)
%H[04]○時。24時間表記(00-23)
%h[Feb]○%bと同じです。月名の省略形(例。Aug)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%k[ 4]○時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]○時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[05]○分(00-59)
%m[02]○月(01-12)
%n[
]
○改行
%P[%P]×午前/午後の小文字
%p[AM]○午前/午後の大文字
%R[04:05]○24時間表記の時分(%H:%M)
%r[04:05:06 AM]○12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[%s]×基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[04:05:06]○24 時間表記の時分秒 (%H:%M:%S)
%t[    ]○タブ文字
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[6]○曜日番号。月曜日が1(1-7)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[04:05:06]○一般的な時刻表記。年月日は含みません。
%x[Sat Feb 3 2001]○
米国
一般的な年月日表記
%V[05]○週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[03-FEB-2001]○VMSフォーマットの日付(例 09-MAR-2039)
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%Z[PST]×タイムゾーン。名前または省略形。不明な場合は空です。
%z[%z]×タイムゾーン。数値形式(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[20]○
米国
拡張表現。元号(無い時は%Cと同じです)
%Ec[Sat Feb 3 04:05:06 2001]○
米国
拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[04:05:06]○拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[Sat Feb 3 2001]○
米国
拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[2001]○
米国
拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[01]○
米国
拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[03]○拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 3]○拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[04]○拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]○拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]○拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[02]○拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[06]○拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[04]○拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[6]○拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[05]○拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[05]○拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[6]○拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[01]○拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)

# -------------------------------
# テスト2。2010年1月1日23時59分59秒 UTC+9 = 1262357999
# -------------------------------
書式(ABC順)実行結果判定説明
%A[Friday]○
米国
曜日
%a[Fri]○
米国
曜日の省略形
%B[January]○
米国
月名
%b[Jan]○
米国
月名の省略形
%C[20]○世紀。西暦年から下位2桁を除去
%c[Fri Jan 1 23:59:59 2010]○
米国
一般的な年月日と時刻
%D[01/01/10]○米国で一般的な年月日(%m/%d/%y)
%d[01]○日(01-31)
%e[ 1]○日。1桁の時は左に半角空白( 1-31)
%F[%F]×年月日。ISO 8601形式。%Y-%m-%d
%G[%G]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[%g]×年。ISO 8601週単位表記の下2桁(00-99)
%H[23]○時。24時間表記(00-23)
%h[Jan]○%bと同じです。月名の省略形(例。Aug)
%I[11]○時。12時間表記(01-12)
%j[001]○年の初めから数えた日数(001-366)
%k[23]○時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[11]○時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[59]○分(00-59)
%m[01]○月(01-12)
%n[
]
○改行
%P[%P]×午前/午後の小文字
%p[PM]○午前/午後の大文字
%R[23:59]○24時間表記の時分(%H:%M)
%r[11:59:59 PM]○12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[59]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[%s]×基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[23:59:59]○24 時間表記の時分秒 (%H:%M:%S)
%t[    ]○タブ文字
%U[00]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[5]○曜日番号。月曜日が1(1-7)
%W[00]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[5]○曜日番号。日曜日が0(0-6)
%X[23:59:59]○一般的な時刻表記。年月日は含みません。
%x[Fri Jan 1 2010]○
米国
一般的な年月日表記
%V[53]○週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[01-JAN-2010]○VMSフォーマットの日付(例 09-MAR-2039)
%Y[2010]○西暦年
%y[10]○西暦年の下2桁(00-99)
%Z[PST]×タイムゾーン。名前または省略形。不明な場合は空です。
%z[%z]×タイムゾーン。数値形式(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[20]○
米国
拡張表現。元号(無い時は%Cと同じです)
%EX[23:59:59]○拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ec[Fri Jan 1 23:59:59 2010]○
米国
拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%Ex[Fri Jan 1 2010]○
米国
拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[2010]○
米国
拡張表現。元号付きの年、完全表記。平成元年のような、こだわり表記が出来ます。(無い時は%Yと同じです)
%Ey[10]○
米国
拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[01]○拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 1]○拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[23]○拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[11]○拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[59]○拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[01]○拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[59]○拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[00]○拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[5]○拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[53]○拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[00]○拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[5]○拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[10]○拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)

==
関連ページ:
    ▼strftime - 時刻を文字列に変換する
    ▼AWKの時刻取得機能(▼ABC順)
    ▼AWKプログラムを書く(▼ABC順)
    ▼AWK
    ▼制作メモ
    > ▼AWKの入出力とコマンド実行機能
    +
    strftimeの書式一覧。 Gawk on Windows編
    strftimeの書式一覧。 Gawk for Windows編
(2010年6月26日追加。書式の説明文と誤記訂正)

strftimeの書式一覧。 Gawk for Windows編 - AWK

AWKのstrftime関数 ▲
互換性の欄は、他のWindows用AWK処理系(Gawk on Windows 3.1.7 / mawk MBCS (32bit版) 1.3.3)で確認しました。「△ = 表現が異なる処理系がある」「× = サポートしていない処理系がある」です。

サポートしている strftime 書式(機能別)
サポートしている strftime 書式(ABC順)
書式調査資料

Gawk for Windows 3.1.6がサポートしている strftime 書式(機能別)
書式(機能別)例互換性説明
-- %文字 --
%%[%]○パーセント記号
%t[    ]×タブ文字
%n[
]
×改行
-- 年、月、日 --
%Y[2001]○西暦年
%m[02]○月(01-12)
%d[03]○日(01-31)
%C[20]×世紀。西暦年の上2桁
%y[01]○西暦年の下2桁(00-99)
%B[February]△月名
%b[Feb]△月名の省略形
%j[034]○年の初めから数えた日数(001-366)
%G[2001]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[01]×年。ISO 8601週単位表記の下2桁(00-99)
%Oy[01]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)
%EC[20]×拡張表現。元号(無い時は%Cと同じです)
%EY[2001]×拡張表現。元号付きの年(無い時は%Yと同じです)
%Ey[01]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Om[02]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%h[Feb]×%bと同じです。月名の省略形(例。Aug)
%e[ 3]×日。1桁の時は左に半角空白( 1-31)
%Oe[ 3]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%Od[03]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
-- 時、分、秒 --
%H[04]○時。24時間表記(00-23)
%M[05]○分(00-59)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%I[04]○時。12時間表記(01-12)
%p[AM]△午前/午後の大文字
%P[am]×午前/午後の小文字
%k[ 4]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%OH[04]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%OS[06]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%s[981140706]×基準時刻からの秒数。1970年1月1日0時(UTC)から
-- 曜日、週番号 --
%A[Saturday]△曜日
%a[Sat]△曜日の省略形
%w[6]○曜日番号。日曜日が0(0-6)
%u[6]×曜日番号。月曜日が1(1-7)
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%V[05]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%Ow[6]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Ou[6]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OU[04]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%OW[05]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%OV[05]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
-- タイムゾーン --
%Z[東京 (標準時)]×タイムゾーン。名前または省略形。不明な場合は空です。
%z[+0900]×タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
-- 組み合わせ(米国仕様) --
%F[2001-02-03]×年月日。ISO 8601形式。%Y-%m-%d
%x[02/03/01]△一般的な年月日表記
%D[02/03/01]×米国で一般的な年月日(%m/%d/%y)
%X[04:05:06]△一般的な時刻表記。年月日は含みません。
%EX[04:05:06]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%T[04:05:06]×24 時間表記の時分秒 (%H:%M:%S)
%r[04:05:06 AM]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%R[04:05]×24時間表記の時分(%H:%M)
%c[Sat Feb 3 04:05:06 2001]△一般的な年月日と時刻
%Ec[Sat Feb 3 04:05:06 2001]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)


Gawk for Windows 3.1.6がサポートしている strftime 書式(ABC順)
書式(ABC順)実行結果の例互換性説明
%A[Saturday]△曜日
%a[Sat]△曜日の省略形
%B[February]△月名
%b[Feb]△月名の省略形
%C[20]×世紀。西暦年の上2桁
%c[Sat Feb 3 04:05:06 2001]△一般的な年月日と時刻
%D[02/03/01]×米国で一般的な年月日(%m/%d/%y)
%d[03]○日(01-31)
%e[ 3]×日。1桁の時は左に半角空白( 1-31)
%EC[20]×拡張表現。元号(無い時は%Cと同じです)
%Ec[Sat Feb 3 04:05:06 2001]×拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[04:05:06]×拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%EY[2001]×拡張表現。元号付きの年(無い時は%Yと同じです)
%Ey[01]×拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%F[2001-02-03]×年月日。ISO 8601形式。%Y-%m-%d
%G[2001]×年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[01]×年。ISO 8601週単位表記の下2桁(00-99)
%H[04]○時。24時間表記(00-23)
%h[Feb]×%bと同じです。月名の省略形(例。Aug)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%k[ 4]×時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]×時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[05]○分(00-59)
%m[02]○月(01-12)
%n[
]
×改行
%Od[03]×拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 3]×拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[04]×拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]×拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]×拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[02]×拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[06]×拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[04]×拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[6]×拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[05]×拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[05]×拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[6]×拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[01]×拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)
%P[am]×午前/午後の小文字
%p[AM]△午前/午後の大文字
%R[04:05]×24時間表記の時分(%H:%M)
%r[04:05:06 AM]×12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[981140706]×基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[04:05:06]×24 時間表記の時分秒 (%H:%M:%S)
%t[    ]×タブ文字
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[6]×曜日番号。月曜日が1(1-7)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[04:05:06]△一般的な時刻表記。年月日は含みません。
%x[02/03/01]△一般的な年月日表記
%V[05]×週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]×タイムゾーン。名前または省略形。不明な場合は空です。
%z[+0900]×タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号


# --------------------------------------------------------------
# 基礎資料。strftime書式調査テスト結果
#
テストに使った書式は、各awk処理系の説明書の他、C言語の同名関数で見かけた書式も混ぜました。
◎の意味は、「日本語対応として望ましい」です。
色が付いている所は、未サポート、もしくは正しいとされる表記が複数あって、互換性に乏しい所です。

調査したAWK処理系 = Gawk for Windows 3.1.6 (2008年2月10日版)
OS = Windows XP SP3 日本語版
調査に使った関数 = strftime
環境変数の追加設定無し = TZやLC_系環境変数の指定無し

# -------------------------------
# テスト1。2001年2月3日4時5分6秒 UTC+9 = 981140706
# -------------------------------
書式(ABC順)実行結果判定説明
%A[Saturday]○
米国
曜日(例。Wednesday)
%a[Sat]○
米国
曜日の省略形(例。Wed)
%B[February]○
米国
月名(例。August)
%b[Feb]○
米国
月名の省略形(例。Aug)
%C[20]○世紀。西暦年の上2桁
%c[Sat Feb 3 04:05:06 2001]○
米国
一般的な年月日と時刻
%D[02/03/01]○米国で一般的な年月日(%m/%d/%y)
%d[03]○日(01-31)
%e[ 3]○日。1桁の時は左に半角空白( 1-31)
%F[2001-02-03]○年月日。ISO 8601形式。%Y-%m-%d
%G[2001]○年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[01]○年。ISO 8601週単位表記の下2桁(00-99)
%H[04]○時。24時間表記(00-23)
%h[Feb]○%bと同じです。月名の省略形(例。Aug)
%I[04]○時。12時間表記(01-12)
%j[034]○年の初めから数えた日数(001-366)
%k[ 4]○時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[ 4]○時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[05]○分(00-59)
%m[02]○月(01-12)
%n[
]
○改行
%P[am]○午前/午後の小文字
%p[AM]○午前/午後の大文字
%R[04:05]○24時間表記の時分(%H:%M)
%r[04:05:06 AM]○12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[06]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[981140706]○基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[04:05:06]○24 時間表記の時分秒 (%H:%M:%S)
%t[    ]○タブ文字
%U[04]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[6]○曜日番号。月曜日が1(1-7)
%W[05]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[6]○曜日番号。日曜日が0(0-6)
%X[04:05:06]○一般的な時刻表記。年月日は含みません。
%x[02/03/01]○
米国
一般的な年月日表記
%V[05]○週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[%v]×VMSフォーマットの日付(例 09-MAR-2039)
%Y[2001]○西暦年
%y[01]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]○タイムゾーン。名前または省略形。不明な場合は空です。
%z[+0900]○タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[20]○
米国
拡張表現。元号(無い時は%Cと同じです)
%Ec[Sat Feb 3 04:05:06 2001]○
米国
拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[04:05:06]○拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[%Ex]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[2001]○
米国
拡張表現。元号付きの年(無い時は%Yと同じです)
%Ey[01]○
米国
拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[03]○拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 3]○拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[04]○拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[04]○拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[05]○拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[02]○拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[06]○拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[04]○拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[6]○拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[05]○拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[05]○拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[6]○拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[01]○拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)

# -------------------------------
# テスト2。2010年1月1日23時59分59秒 UTC+9 = 1262357999
# -------------------------------
書式(ABC順)実行結果判定説明
%A[Friday]○
米国
曜日(例。Wednesday)
%a[Fri]○
米国
曜日の省略形(例。Wed)
%B[January]○
米国
月名(例。August)
%b[Jan]○
米国
月名の省略形(例。Aug)
%C[20]○世紀。西暦年の上2桁
%c[Fri Jan 1 23:59:59 2010]○
米国
一般的な年月日と時刻
%D[01/01/10]○米国で一般的な年月日(%m/%d/%y)
%d[01]○日(01-31)
%e[ 1]○日。1桁の時は左に半角空白( 1-31)
%F[2010-01-01]○年月日。ISO 8601形式。%Y-%m-%d
%G[2009]○年。ISO 8601週単位表記。年末年始で、%Yと異なります。
%g[09]○年。ISO 8601週単位表記の下2桁(00-99)
%H[23]○時。24時間表記(00-23)
%h[Jan]○%bと同じです。月名の省略形(例。Aug)
%I[11]○時。12時間表記(01-12)
%j[001]○年の初めから数えた日数(001-366)
%k[23]○時。24時間表記で、1桁の時は左に半角空白( 0-23)
%l[11]○時。12時間表記で、1桁の時は左に半角空白( 0-12)
%M[59]○分(00-59)
%m[01]○月(01-12)
%n[
]
○改行
%P[pm]○午前/午後の小文字
%p[PM]○午前/午後
%R[23:59]○24時間表記の時分(%H:%M)
%r[11:59:59 PM]○12時間表記の時分秒+午前午後(%I:%M:%S %p)
%S[59]○秒(00-59)。閏秒を表示するシステムの場合は61秒までの可能性
%s[1262357999]○基準時刻からの秒数。1970年1月1日0時(UTC)から
%T[23:59:59]○24 時間表記の時分秒 (%H:%M:%S)
%t[    ]○タブ文字
%U[00]○週番号。その年の最初の日曜日から1週目。最初の日曜日の前日までは00。(00-53)
%u[5]○曜日番号。月曜日が1(1-7)
%W[00]○週番号。その年の最初の月曜日から1週目。最初の月曜日の前日までは00。(00-53)
%w[5]○曜日番号。日曜日が0(0-6)
%X[23:59:59]○一般的な時刻表記。年月日は含みません。
%x[01/01/10]○
米国
一般的な年月日表記
%V[53]○週番号。ISO 8601週単位表記。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。
%v[%v]×VMSフォーマットの日付(例 09-MAR-2039)
%Y[2010]○西暦年
%y[10]○西暦年の下2桁(00-99)
%Z[東京 (標準時)]○タイムゾーン。名前または省略形。不明な場合は空です。
%z[+0900]○タイムゾーン。+HHMM形式 = RFC 822/RFC 1036(例 +0900)。不明な場合は空です。
%%[%]○パーセント記号
%EC[20]○
米国
拡張表現。元号(無い時は%Cと同じです)
%Ec[Fri Jan 1 23:59:59 2010]○
米国
拡張表現。地域固有の日付時刻表現(無い時は%cと同じです)
%EX[23:59:59]○拡張表現。地域固有の時刻表現(無い時は%Xと同じです)
%Ex[%Ex]×拡張表現。地域固有の日付表現(無い時は%xと同じです)
%EY[2010]○
米国
拡張表現。元号付きの年(無い時は%Yと同じです)
%Ey[10]○
米国
拡張表現。元号で数えた時の、年の数字(無い時は%yと同じです)
%Od[01]○拡張表現。地域固有の日表現。最大桁数になるまで、左を0で埋めます。(無い時は%dと同じです)
%Oe[ 1]○拡張表現。地域固有の日表現。最大桁数になるまで、左を半角空白で埋めます。(無い時は%eと同じです)
%OH[23]○拡張表現。地域固有の時表現(24時間)(無い時は%Hと同じです)
%OI[11]○拡張表現。地域固有の時表現(12時間)(無い時は%Iと同じです)
%OM[59]○拡張表現。地域固有の分表現(無い時は%Mと同じです)
%Om[01]○拡張表現。地域固有の月表現(無い時は%mと同じです)
%OS[59]○拡張表現。地域固有の秒表現(無い時は%Sと同じです)
%OU[00]○拡張表現。地域固有の週番号表現。その年の最初の日曜日から1週目。その前日までは00相当(無い時は%Uと同じです)
%Ou[5]○拡張表現。地域固有の曜日番号表現。月曜日が1で、7まで(無い時は%uと同じです)
%OV[53]○拡張表現。地域固有の週番号表現。ISO 8601の規定通り。週の最初は月曜日。1月1日を含む週は、所属日の多い年に含めます。(無い時は%Vと同じです)
%OW[00]○拡張表現。地域固有の週番号表現。その年の最初の月曜日から1週目。その前日までは00相当(無い時は%Wと同じです)
%Ow[5]○拡張表現。地域固有の曜日番号表現。日曜日が0で、6まで(無い時は%wと同じです)
%Oy[10]○拡張表現。地域固有の西暦年下2桁表現(無い時は%yと同じです)

==
関連ページ:
    ▼strftime - 時刻を文字列に変換する
    ▼AWKの時刻取得機能(▼ABC順)
    ▼AWKプログラムを書く(▼ABC順)
    ▼AWK
    ▼制作メモ
    > strftimeの書式一覧。 mawk MBCS (32bit版)編
    +
    strftimeの書式一覧。 Gawk on Windows編
(2010年6月26日追加。説明文追加と誤記訂正)