关于8进制的问题,在不做变量替换的情况下在数值前面添加一个数字让整个数字扩大,或者添加“/i”参数强制比较字符串,也是可以解决的吧。
调用批处理:
@echo OFF
FOR /F "tokens=1,2,3 delims=-" %%i in ("%DATE%") do if %%i==2011 (if 1%%j lss 104 (call 22.bat %%k) else call 11.bat) else call 11.bat
或者:
FOR /F "tokens=1,2,3 delims=-" %%i in ("%DATE%") do if %%i==2011 (if /i %%j lss 04 (call 22.bat %%k) else call 11.bat) else call 11.bat
不用for:
if /i %DATE:~0,4%==2011 (if /i %DATE:~5,2% lss 04 (call 22.bat %DATE:~-2%) else call 11.bat) else call 11.bat
22.bat 内容:
if /i %1==20 goto 20
echo 不是20号
pause
:20
echo 是20号
pause