ログやファイル名にやっぱり付けたいのが日時です。
文字列の抜き出し
c:\>echo %date% %time% 2012/12/22 9:02:59.48
となります。
変数から文字列を抜き出すには %変数:~s,e% でs文字目からe文字目を抜き出します。
0から始まりますのでyyyy-mm-dd hh:mi:ssと抜き出すには
c:\>echo %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%:%time:~3,2%:%time:~6,2% 2012-12-22 9:10:33
とします。
でも見ての通り09時と欲しいところが△9時となっています。
文字列の置き換え
変数の文字を置き換えるには%変数:=f,r% としfをrに置き換えます。
c:\>echo %time% 9:14:18.68 c:\>echo %time: =0% 09:14:18.68
日時を取得するバッチ
結果として事前に0詰めしてやった変数を使用することになります。
set yyyymmdd=%date: =0% set hhmmss=%time: =0% echo echo %yyyymmdd:~0,4%-%yyyymmdd:~5,2%-%yyyymmdd:~8,2% %hhmmss:~0,2%:%hhmmss:~3,2%:%hhmmss:~6,2%