我在美国英语语言环境中使用 Windows 2008 R2。我的批处理文件在 8 月 1 日之后停止工作。从 3 月到 7 月运行良好。
该脚本将带有前导零的数字月份转换为字符串。这是重现的脚本。实际的批处理脚本从 %date% 中提取数字月份。
set month=07
REM convert numerical month to string
for /f "tokens=%month%" %%A in (
"jan feb mar apr may jun jul aug sep oct nov dec") do (
set month_str=%%A
)
echo %month_str%
以上运行良好。它显示“七月”
但是,如果我将月份更改为 08,则会失败并显示错误消息
8" was unexpected at this time
所以我删除了前导零。
set /A month=100%month% %% 100
现在它又可以正常工作了,这是我的问题
- Windows 2008 R2 FOR 命令的官方文档在哪里?
编辑:http ://technet.microsoft.com/en-us/library/cc754900.aspx
- 将零填充数字传递给令牌选项可能是我的错,但为什么 07 是可接受的而不是 08?
- 如果 07 是有效参数,它是否与 7 相同或解释为其他内容?