2011-03-25 105 views
1

所以我有这个代码。Windows批处理:日期格式变量打印不正确

FOR /F "tokens=*" %%A IN ('dateFormat +"%Y/%m/%d %T"') DO SET Now=%%A 
CALL run_some_job "%Now%" 

我的输出。

JOB_FILE_PATH>FOR /F "tokens=*" %A IN ('dateFormat +"m/T" 
') DO SET Now=%A 

JOB_FILE_PATH>SET Now=m/T 

JOB_FILE_PATH>CALL run_some_job m/T 

我在此使用date.exe中的dateFormat工具。 http://unxutils.sourceforge.net/打印日期。如果我做dateFormat +“%Y /%m /%d%T”,比它正常工作。

感谢

回答

1

你一定要逃逸的日期格式参数百分号:

FOR /F "tokens=*" %%A IN ('c:\utils\date +"%%Y/%%m/%%d %%T"') DO SET Now=%%A