S_a_k_Uの日記みたいなDB

~サクゥーと呼ばないで~

バッチ中で日時の文字列を取得する

最近仕事or勉強してんのかよ?ってくらい技術メモがないですが…

REM 日付(yyyyMMdd)を取得
SET NOW_DATE=%date:~-10,4%%date:~-5,2%%date:~-2,2%

REM 時刻の時(hh)の頭が空白なら0と置き換える(時(hh)のゼロパディング)
SET NOW_TIME_ZERO_PAD=%time: =0%
REM 時刻(hhmmss)を取得
SET NOW_TIME=%NOW_TIME_ZERO_PAD:~0,2%%NOW_TIME_ZERO_PAD:~3,2%%NOW_TIME_ZERO_PAD:~6,2%

REM 日時(yyyyMMddhhmmss)を取得
SET NOW_DATETIME=%NOW_DATE%%NOW_TIME%

結果

NOW_DATE=20120214
NOW_DATETIME=20120214181426
NOW_TIME=181426
NOW_TIME_ZERO_PAD=18:14:26.06

■参考
バッチ・ファイル中で日付をファイル名に使用する − @IT