我尝试使用下面的脚本在我的某个驱动器中创建一个时间戳目录,出于某种原因,在创建目录的最后一个字符串上给出了语法错误。见下文。
:: Code begins....
pause
W:
pause
cd W:\VL2000_AMF\AMF_Archive
pause
for /F "tokens=1-4 delims=. " %%i in ('date /t') do (
set Day=%%i
set Month=%%j
set Year=%%k
)
pause
for /F "tokens=1-4 delims=: " %%i in ('time /t') do (
set Hour=%%i
set Minute=%%j
set Second=%%k
)
pause
md %1\%Year%-%Month%-%Day%
pause
:: Code ends....
答案 0 :(得分:0)
我在Windows 2000和2003上使用以下命令从date命令输出中获取年,月和日。不幸的是,我不再使用任何XP系统来查看它是否可以在那里工作。
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (
echo "Day=%%i"
echo "Month=%%j"
echo "Year=%%k"
)
XP上“date / t”和“time / t”输出的格式是什么?
答案 1 :(得分:0)
您确定您的日期会以mm.dd.yyyy
的形式返回(以点分隔,并按照您预期的顺序排列)?如果进程的区域设置不符合您的预期,那么%Day%
可能最终会出现8/17/2010
,这会导致md
在尝试解释/17
时报告语法错误1}}和/2010
作为选项。