8.4.7 dateコマンド(システムの日付と時刻を表示する)
形式
date[-u][-d 日時情報指定文字列 | -r 経過秒][+書式]
機能
システムの日付と時刻を表示します。
引数
-u
--utc
- --universal
UTC(世界協定時)の日付を表示します。
-d 日時情報指定文字列
- --date=日時情報指定文字列
表示する日時を日時情報指定文字列で指定します。複数指定した場合は最後の指定が有効になります。指定できる日時情報指定文字列については,「-dオプションで指定できる日時情報指定文字列」を参照してください。
- -r 経過秒
エポック(UTCの1970年1月1日00:00:00)から,経過秒に指定した時間が経過した日時を表示します。経過秒に指定できる値は,-1009875600~2147440447です。範囲外の値を指定した場合,出力する内容は保証できません。
- +書式
日付と時刻の表示形式を書式指定コードで指定します。書式指定コードはOSのAPIであるstrftime関数の書式指定コードが指定できます。指定できる書式指定コードについては,「指定できる書式指定コード」を参照してください。
この引数を指定していない場合は,日付と時刻の表示形式は「%Y/%m/%d %A %H:%M:%S %Z」になります。
指定できる書式指定コード
「+」で始まる引数には,OSのAPIであるstrftime関数の書式指定コードが指定できます。このOSのAPIであるstrftime関数で指定できる書式指定コードは,OSによって異なります。各OSで指定できる書式指定コードについては,各OSのstrftime関数についてのドキュメントを参照してください。
各OSのstrftime関数とJP1/Advanced Shell固有で共通して使用できる代表的な書式指定コードを次の表に示します。
書式指定コード |
意味 |
---|---|
%a |
曜日の省略名 |
%A |
曜日の正式名 |
%b |
月の省略名 |
%B |
月の正式名 |
%c |
ロケールに対応する日付・時刻の表示 |
%d |
10進数で表す月の日付(01~31) |
%H |
24時間表記で表す時間(00~23) |
%I |
12時間表記で表す時間(01~12) |
%j |
10進数で表す年の初めからの日数(001~366) |
%m |
10進数で表す月(01~12) |
%M |
10進数で表す分(00~59) |
%p |
現在のロケールの午前/午後 |
%S |
10進数で表す秒。表示される値の範囲は,うるう秒への対応の違いから,OSによって異なる |
%s |
エポック(UTCの1970年1月1日00:00:00)からの経過秒数。 環境変数ADSH_CMDDATE_FORMATで指定がない場合,Linux,AIX,HP-UXで使用できる(strftime関数で処理する)。 環境変数ADSH_CMDDATE_FORMATで指定した場合,すべてのOSで使用できる(JP1/Advanced Shell固有の変換をする)。 |
%U |
10進数で表す週の通し番号(00~53)。その年の最初の日曜日を週の最初の日とする |
%w |
10進数で表す曜日(0~6,日曜日が0) |
%W |
10進数で表す週の通し番号(00~53)。その年の最初の月曜日を週の最初の日とする |
%x |
現在のロケールの日付の表示 |
%X |
現在のロケールの時刻の表示 |
%y |
10進数で表す西暦の下2桁(00~99) |
%Y |
10進数で表す4桁の西暦 |
%Z |
タイムゾーン名。タイムゾーンが不明な場合は表示しない |
%% |
%(パーセント)記号 |
-dオプションで指定できる日時情報指定文字列
日時情報指定文字列には,dateコマンドで表示したい日時を次のように指定します。
絶対日時だけで指定
指定した日時を表示します。
相対日時だけで指定
現在の日時から移動した日時を表示します。
絶対日時と相対日時を組み合わせて指定
絶対日時で指定した日時から,相対日時で指定した分だけ移動した日時を表示します。
日時情報指定文字列の要素は大文字でも小文字でも指定できます。UTCの1970年1月1日0時0分0秒より小さい値,または2038年1月19日3時14分7秒より大きい値を指定した場合,エラーメッセージ「date: Invalid date: 指定値」を出力し,エラー終了します。ただし,AIXの場合,ローカルのタイムゾーンの2038年1月19日3時14分7秒より大きい値を指定すると,エラーメッセージ「date: Invalid date: 指定値」を出力し,エラー終了します。また,日時情報指定文字列として空文字を指定した場合,現在の日付の0時0分0秒を表示します。
日時情報指定文字列はスペース区切りで指定します。ただし,文字,数字,符号の各種文字列で,異なる種類の文字列同士の場合はスペースなしで指定できます。例えば,文字と文字はスペースなしで指定できませんが,数字と文字など異なる種類の文字列同士の場合はスペースなしで指定できます。
日時情報指定文字列で指定できる要素と構文を次に示します。
絶対日時の指定
絶対日時での日時情報指定文字列の要素を次の表に示します。
表8‒7 日時情報指定文字列(絶対日時の指定)の要素 種別
指定できる要素※
詳細
年
10進数で表す4桁の西暦 (YYYY)
1970から2038まで指定できます。
10進数で表す西暦の下2桁 (YY)
00から99まで指定できます。
69から99までは1900年代と仮定され,00から68までは2000年代と仮定されます。
月
月の名称(MONTH)
次の値が指定できます。
January,Jan:1月
February,Feb:2月
March,Mar:3月
April,Apr:4月
May:5月
June,Jun:6月
July,Jul:7月
August,Aug:8月
September,Sept,Sep:9月
October,Oct:10月
November,Nov:11月
December,Dec:12月
10進数で表す月(MM)
01から12まで指定できます。
日
10進数で表す月の日付(DD)
01から31まで指定できます。
時
24時間表記で表す時間(hh)
00から23まで指定できます。
12時間表記で表す時間(hh)
01から12まで指定できます。
分
10進数で表す分(mm)
00から59まで指定できます。
秒
10進数で表す秒(ss)
00から59まで指定できます。
午前・午後
午前・午後(am | a.m. | pm | p.m.)
次の値を時間の後ろに指定できます。
am,a.m.:午前
pm,p.m.:午後
タイムゾーン
タイムゾーン名(ST)
次の値が指定できます。
UTC,UT:世界協定時
GMT:グリニッジ標準時(UTC + 0時間)
WET:西ヨーロッパ時間(UTC + 0時間)
AST:大西洋標準時(UTC - 4時間)
EST:東部標準時(UTC - 5時間)
CST:中部標準時(UTC - 6時間)
MST:山岳部標準時(UTC - 7時間)
PST:太平洋標準時(UTC - 8時間)
HST:ハワイ標準時(UTC - 10時間)
WAT:西アフリカ時間(UTC + 1時間)
CET:中央ヨーロッパ時間(UTC + 1時間)
MET:中央ヨーロッパ時間(UTC + 1時間)
CAT:中央アフリカ時間(UTC + 2時間)
EET:東ヨーロッパ時間(UTC + 2時間)
JST:日本標準時(UTC + 9時間)
GST:グアム標準時(UTC + 10時間)
NZST:ニュージーランド標準時(UTC + 12時間)
ミリタリータイムゾーン(ST)
次の値が指定できます。
A:UTC - 1時間
B:UTC - 2時間
C:UTC - 3時間
D:UTC - 4時間
E:UTC - 5時間
F:UTC - 6時間
G:UTC - 7時間
H:UTC - 8時間
I:UTC - 9時間
K:UTC - 10時間
L:UTC - 11時間
M:UTC - 12時間
N:UTC + 1時間
O:UTC + 2時間
P:UTC + 3時間
Q:UTC + 4時間
R:UTC + 5時間
S:UTC + 6時間
T:UTC + 7時間
U:UTC + 8時間
V:UTC + 9時間
W:UTC + 10時間
X:UTC + 11時間
Y:UTC + 12時間
Z:UTC
UTCからの時間指定(+hhmm | -hhmm | +hh:mm | -hh:mm)
UTCからの時間を+hhmm,-hhmm,+hh:mmまたは-hh:mmで指定できます。mmおよび:mmは省略することができます。
タイムゾーン(夏時間)
タイムゾーン(夏時間)(DT)
次の値が指定できます。
BST:英国夏時間(GMT + 1時間)
ADT:大西洋夏時間(AST + 1時間)
EDT:東部夏時間(EST + 1時間)
CDT:中部夏時間(CST + 1時間)
MDT:山岳部夏時間(MST + 1時間)
PDT:太平洋夏時間(PST + 1時間)
MEST:中央ヨーロッパ夏時間(MET + 1時間)
NZDT:ニュージーランド夏時間(NZST + 1時間)
デイライトセービングタイム
デイライトセービングタイム(DST)
デイライトセービングタイムとしてDSTを指定できます。タイムゾーンと同時に指定することで,指定したタイムゾーンの標準時刻を,指定された日時やタイムゾーンに関係なく,常に1時間進めます。タイムゾーンの指定なしでDSTを指定することはできません。
- 注※
括弧内のYYやMONTHなどの記号は,次の表の構文と対応しています。
絶対日時での日時情報指定文字列の構文を次の表に示します。
表8‒8 日時情報指定文字列(絶対日時の指定)の構文 種別※
構文
詳細
日付の指定
[YY]YYMMDD
スペースなしで,年・月・日の順番で定義します。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。
[YYYY/]MM/DD
「/」区切りで,年・月・日の順番で定義します。年を省略した場合,現在の年が仮定されます。
この構文の場合,MM,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
MM/DD[/[YY]YY]
「/」区切りで,月・日・年の順番で定義します。年を省略した場合,現在の年が仮定されます。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,MM,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。ただしMMは4桁では指定できません。
[YY]YY-MM-DD
「-」区切りで,年・月・日の順番で定義します。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,MM,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
DD MONTH [[YY]YY]
スペース区切りで,日・月の正式名(または月の省略名)・年の順番で定義します。年を省略した場合,現在の年が仮定されます。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
MONTH DD [,[YY]YY]
月の正式名(または月の省略名)・日・年の順番で指定します。月の正式名(または月の省略名)と日をスペース区切りで,日と年を「,」区切りで定義できます。年を省略した場合,現在の年が仮定されます。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
DD[-]MONTH[[-][YY]YY]
「-」区切り,またはスペースなしで,日・月の正式名(または月の省略名)・年の順番で定義します。年を省略した場合,現在の年が仮定されます。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
MONTH-DD-[YY]YY
「-」区切りで,月の正式名(または月の省略名)・日・年の順番で定義します。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
MONTH DD [[YY]YY]
スペース区切りで,月の正式名(または月の省略名)・日・年の順番で定義します。年を省略した場合,現在の年が仮定されます。年の最初の2桁は省略できます。
この構文の場合,YYYYは前に0を付加した5桁以上の数値でも指定できます。また,DDは1桁,または前に0を付加した2桁以上の数値を指定できます。
時間の指定
hh[mm]
hh [am | a.m. | pm | p.m.]
スペースなしで,時・分の順番で定義します。
分の定義は省略できます。
時だけの定義のとき,スペース区切りでam(a.m.),pm(p.m.)を定義できます。
am(a.m.),pm(p.m.)を定義する場合,時の定義は12時間表記にしてください。
この構文の場合,hh[mm]のhhは1桁の数値でも指定できます。また,hh [am | a.m. | pm | p.m.]のhhは1桁,または前に0を付加した2桁以上の数値を指定できます。
hh:mm[:ss] [am | a.m. | pm | p.m.]
「:」区切りで,時・分・秒の順番で定義します。
秒の定義は省略できます。
時・分・秒の定義の後ろに,スペース区切りでam(a.m.),pm(p.m.)を定義できます。
am(a.m.),pm(p.m.)を定義する場合,時・分・秒の定義は12:59:59以内としてください。
この構文の場合,hh,mm,ssは1桁,または前に0を付けた2桁以上の数値を指定できます。
hh:mm[:ss] [+hh[mm] | -hh[mm] | +hh[:mm] | -hh[:mm]]
「:」区切りで,時・分・秒の順番で定義します。
秒の定義は省略できます。
時・分・秒の定義のあとに,スペース区切りで+hhmm,-hhmm,+hh:mmまたは-hh:mmを定義できます。
この構文の場合,hh,mm,ssは1桁,または前に0を付けた2桁以上の数値を指定できます。
タイムゾーン
ST [DST]
ST [+hh[mm] | -hh[mm] | +hh[:mm] | -hh[:mm]]
タイムゾーンを指定します。タイムゾーンの後ろにスペース区切りで,DST,+hhmm,-hhmm,+hh:mmまたは-hh:mmを定義できます。
この構文の場合,hh,mmは1桁,または前に0を付けた2桁以上の数値を指定できます。ただし,hhmmではmmは2桁で指定します。
DT
タイムゾーン(夏時間)を定義します。タイムゾーン(夏時間)と共に,DST,+hhmm,-hhmm,+hh:mmまたは-hh:mmを定義することはできません。
- 注※
同じ種別は複数定義できませんが,異なる種別同士は組み合わせて定義できます。
日付だけ指定すると,時間は0時0分0秒が定義されます。
時(hh)だけ指定すると,現在の日付で分(mm)と秒(ss)が0で定義されます。
時間(hh)と分(mm)だけ指定すると,現在の日付で秒(ss)が0で定義されます。
相対日時の指定
相対日時での日時情報指定文字列の要素を次の表に示します。
表8‒9 日時情報指定文字列(相対日時の指定)の要素 指定できる要素※
詳細
年・月の移動(DATE)
次の値を指定します。
year,years:年の移動
month,months:月の移動
値の前に数値(NUM)を指定できます。数値(NUM)を省略した場合は1が仮定されます。
日の移動(DATE)
次の値を指定します。
fortnight,fortnights:2週間(14日)の移動
week,weeks:1週間(7日)の移動
day,days:日の移動
tomorrow:明日(1日後)
yesterday:昨日(1日前)
today:今日(0日)
now:現在(0日)
値の前に数値(NUM)を指定できます。数値(NUM)を省略した場合は1が仮定されます。
時・分の移動(DATE)
次の値を指定します。
hour,hours:時間の移動
minute,min,minutes:分の移動
値の前に数値(NUM)を指定できます。数値(NUM)を省略した場合は1が仮定されます。
秒の移動(DATE)
次の値を指定します。
second,sec,seconds:秒の移動
値の前に数値(NUM)を指定できます。数値(NUM)を省略した場合は1が仮定されます。
曜日の移動(DAY)
次の値を指定します。
Monday,Mon:月曜
Tuesday,Tue,Tues:火曜
Wednesday,Wed,Wednes:水曜
Thursday,Thu,Thur,Thurs:木曜
Friday,Fri:金曜
Saturday,Sat:土曜
Sunday,Sun:日曜
値の前に数値(NUM)を指定し,NUM回目の曜日を指定できます。数値(NUM)を省略した場合は1が仮定されます。1または数値(NUM)の指定がない場合,次に訪れる曜日を意味します。符号(+|-)または前後指定(ago)を指定することはできません。
数値指定(文字列)(NUM)
次の値を指定します。
last:-1
this:0
next:1
first:1
third:3
fourth:4
fifth:5
sixth:6
seventh:7
eighth:8
ninth:9
tenth:10
eleventh:11
twelfth:12
値の前に数値(NUM)は指定できません。
数値指定(数字)(NUM)
0から2147483647まで指定できます。
符号(+|-)
次の値を数値指定(数字)の前に指定できます。
+:正
- :負
符号の後ろに数値の指定がない場合,符号の指定は無視します。
前後指定(ago)
次の値を指定します。
ago:前の「-」
agoの直前に指定された日時情報指定文字列の正負を逆(正なら負,負なら正)にします。
- 注※
括弧内のNUMやDATEなどの記号は,次の表の構文と対応しています。
相対日時での日時情報指定文字列の構文を次の表に示します。「日時の移動」と「曜日の移動」は組み合わせて定義できます。
表8‒10 日時情報指定文字列(相対日時の指定)の構文 種別
構文
詳細
日時の移動
[[+ | -]NUM] DATE [ago]
現在の日時,または日時情報指定文字列(日時の指定)で指定した日時からの移動分を指定します。
スペース区切りで複数指定することもできます。
組み合わせ可能な要素については表「日時情報指定文字列(相対日時の指定)の要素」を参照してください。
曜日の移動
[NUM] DAY
DAY[,]
曜日を指定します。複数指定することはできません。
また,曜日の前に数値(NUM)を指定すると,NUM回目の曜日を定義できます。数値(NUM)の指定がない場合,次に訪れる曜日を意味します。
曜日の後ろに「,」またはスペースを指定することで,「日時の移動」の定義を続けて指定できます。
その他の指定
その他の日時情報指定文字列の要素を次の表に示します。
表8‒11 日時情報指定文字列(その他)の要素 指定できる要素
詳細
コメント
日時情報指定文字列の中に「(」と「)」で囲んで,コメントとして任意の文字列を指定します。「(」と「)」が適切に入れ子状になっている場合,中に指定された文字列は無視されます。
また,「(」だけが指定されている場合,「(」以降の指定はすべて無視されます。
「絶対日時の指定」および「相対日時の指定」は次の順序で算出されます。2.~4.の途中で,秒に換算した結果が0~2147483647の範囲を超えた場合,最終結果に関係なくエラーになることがあります。
現在の日時,または「絶対日時の指定」で指定された日時を求めます。
1.に対して,「相対日時の指定」で指定された「曜日の移動」の結果を加算します。「絶対日時の指定」で「日付の指定」の指定がされた場合は,「曜日の移動」の指定があっても加算しません。
2.に対して,「相対日時の指定」で指定された「年・月の移動」のすべての結果を加算・減算します。
3.に対して,「相対日時の指定」で指定された「日の移動」,「時・分の移動」,「秒の移動」のすべての結果を加算・減算します。
2.~4.は計算対象の日時からの移動分を計算します。
例えば,現在の日時が2014年4月30日10時10分10秒のときに「date -d "Fri, 1 year 1 month 1 day 1 hour 1 min 1 sec"」が指定された場合,次のように計算します。
- 1.で,現在の日時を求めます。
→2014年4月30日(水曜日)10時10分10秒になります。
- 2.で,2014年4月30日(水曜日)から次の金曜日までの日数を足します。
→2014年5月2日(金曜日)10時10分10秒になります。
- 3.で,365日と2014年の5月分の日数を足します。
→2015年6月2日(月曜日)10時10分10秒になります。
- 4.で,1日分の日数と,1時間1分1秒の時間を足します。
→2015年6月3日(火曜日)11時11分11秒になります。
日時情報指定文字列で複数の構文を組み合わせたときに注意が必要な指定
日時情報指定文字列で,「絶対日時の指定」および「相対日時の指定」を複数組み合わせたときに注意が必要な指定があります。
次に示すように,[YY]YYMMDDまたはhh[mm]の構文の後ろに符号付きの「相対日時の指定」を指定するとエラーになります。[YY]YYMMDDまたはhh[mm]の構文と符号付きの「相対日時の指定」を組み合わせて指定したい場合は,[YY]YYMMDDまたはhh[mm]を最後に指定してください。
C:\TEMP>date -d "20151112 -10 days"
date: Invalid date: 20151112 -10 days
C:\TEMP>date -d "-10 days 20151112"
2015/11/02 月曜日 00:00:00 JST
C:\TEMP>date -d "0955 -1 hours"
date: Invalid date: 0955 -1 hours
C:\TEMP>date -d "-1 hours 0955"
2016/09/28 水曜日 08:55:00 JST
文字,数字,符号の各種文字列で,異なる種類の文字列同士が隣り合う場合,スペースがあっても区切り文字として扱いません。このため,次の例の場合,「date -d "10-November-15 days"」と同じ解釈をして,2015年11月10日の1日後を表示します。後ろに指定する「相対日時の指定」の内容によって解釈が異なることがある「絶対日時の指定」を指定する場合は,「絶対日時の指定」を最後に指定してください。
C:\TEMP>date -d "10-November -15 days"
2015/11/11 水曜日 00:00:00 JST
次に示すように,hh:mm[:ss]およびSTの後ろに符号付きの数字を指定した場合,符号付きの数字は+hh[mm]または-hh[mm]と解釈します。このため,次の例の場合,UTC-10時間の12時11分10秒をJSTに変換した日時に対して1時間進めた日時を表示します。
C:\TEMP>date -d "20151110 12:11:10 -10 hours"
2015/11/11 水曜日 08:11:10 JST
JP1/Advanced Shell固有の共通書式指定コード
環境変数ADSH_CMDDATE_FORMATで指定した書式指定コードは,strftime関数を使用しないで,JP1/Advanced Shellが独自に編集します。これによって,OS間のstrftime関数の仕様差に影響されないで,共通の出力結果を得ることができます。
指定できる書式コードとその動作を次に示します。
- 環境変数ADSH_CMDDATE_FORMAT
-
JP1/Advanced Shell固有に,変換処理は環境変数ADSH_CMDDATE_FORMATで指定があったときだけ実行します。
環境変数名
指定値
ADSH_CMDDATE_FORMAT
s
環境変数ADSH_CMDDATE_FORMATにsを指定した場合,エポック(UTCの1970年1月1日00:00:00)からの経過秒数を出力します。sを指定した場合は以降に示す共通書式処理の範囲の動作となります。
- 書式の形式
-
%[フラグ][フィールド幅]
・フラグ~[ _ | - | 0 | ^ | # ]
_(アンダーバー)
数値の結果文字列のパディング(穴埋め)をスペース(空白文字)でします。
-(ハイフン)
数値の結果文字列をフィールドに左詰めに設定します。
フィールドの空きはスペース(空白文字)でパディングをします。
0
数値の結果文字列へのパディングを0でします。
^
結果文字列中のアルファベット文字を大文字に変換します。
ただし,書式指定コードsでは意味がないので無視します。
#
結果文字列の大文字・小文字を入れ替えます。
書式指定コードsでは意味がないので無視します。
・フィールド幅
数値を出力するフィールドの幅を十進数で指定します。
パディングの指定がないときはスペース(空白文字)でパディングします。
書式の形式が正しくない場合は,この書式指定(当該書式の%からsまで)を文字として出力します。
終了コード
終了コード |
意味 |
---|---|
0 |
正常終了 |
1以上 |
エラー終了 |
注意事項
「+」で始まる引数に指定した書式コードが,strftime関数で有効な書式コード以外の場合は,指定された値をそのまま出力します。ただし,環境変数ADSH_CMDDATE_FORMATで指定した書式指定コードは除きます。環境変数ADSH_CMDDATE_FORMATで指定した書式指定コードの指定形式が不当な場合は,指定された値をそのまま出力します。
Windowsの場合,有効な書式コードと無効な書式コードを混在して指定すると,すべての書式コードを変換しないで,指定された値をそのまま出力します。
UNIXの場合,有効な書式コードは変換出力し,無効な書式コードは指定された値を出力します。
Windowsの場合,環境変数TZを設定するときは,環境変数TZの値とコントロールパネルの[日付と時刻のプロパティ]ダイアログボックスで定義されているタイムゾーンを同じにしてください。同じでない場合,日時の表示が正しく行われない場合があります。
指定できる引数でない引数をコマンドラインに指定しても,その引数の指定は無視されます。
次の環境変数が設定されている場合は,「+」で始まる引数の後ろに指定したオプションは無視されます。
環境変数POSIXLY_CORRECT
環境変数ADSH_CMD_ARGORDER=seq
使用例
オプションを指定しない場合のデフォルトを表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date 2011/05/09 月曜日 02:03:05 JST
-uオプションを指定して,UTC(世界協定時)の日付と時刻を表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -u 2011/05/08 日曜日 17:03:11 UTC
-rオプションを指定して,エポックから,指定した秒が経過した日時を表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -r 1234567890 2009/02/14 土曜日 08:31:30 JST
「+」で始まるオペランドに,表示する日付と時刻の形式を指定します。
C:\TEMP>%ADSH_OSCMD_DIR%\date "+%Y-%m-%d %H.%M.%S" 2011-05-09 02.10.02
今年の12月12日の日付を表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -d "12/12" 2011/12/12 日曜日 00:00:00 JST
3か月と1日後の日付を表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -d "3 months 1 day" 2011/08/10 水曜日 00:00:00 JST
2日前の日付を表示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -d "2 days ago" 2011/05/07 土曜日 00:00:00 JST
2011年5月1日から100日後の日付を表示します。日時情報指定文字列を--dateオプションで指定します。
C:\TEMP>%ADSH_OSCMD_DIR%\date --date="1-May-2011 100 days" 2011/08/09 火曜日 00:00:00 JST
-
Windowsでエポック(UTCの1970年1月1日00:00:00)からの経過秒数を表示します。
C:\TEMP>set ADSH_CMDDATE_FORMAT=s C:\TEMP>%ADSH_OSCMD_DIR%\date +%s 1435197101
オプションエラーのメッセージを表示します。
このメッセージは,コマンドを実行するプラットフォームによって異なる場合があります。Windowsの例を次に示します。
C:\TEMP>%ADSH_OSCMD_DIR%\date -a date: illegal option -- a usage: date [-u] [-d string | -r seconds] [+format]