バッチファイル中で日付・時刻を取得

バッチ・ファイル中でファイル名などに日付・時刻を使用したい場合、次のコマンドを実行する。

sambple.bat

for /f "tokens=1-3 delims=/ " %%i in ("%date%") do set DT=%%i-%%j-%%k
for /f "tokens=1-3 delims=:." %%i in ("%time%") do set TM=%%i%%j%%k
@echo off
rem Windows 2000対応、時部分が1桁の場合、10の位を0埋め
for /f "tokens=1-3 delims=/" %%i in ("%date:~-10%") do set DT=%%i-%%j-%%k
for /f "tokens=1-3 delims=:." %%i in ("%time: =0%") do set TM=%%i%%j%%k
echo %DT%
echo %TM%

実行例

C:\>echo %date%
2005/08/08
C:\>echo %time%
8:41:52.37

C:\>sample.bat
2005-08-08
084152