我似乎碰到了一个试图获取批处理文件以从用户输入的变量中减去一组数字的路障。我有一个命令,用户输入IP地址,然后将其分隔为四个独立的八位字节,然后我需要从最后一个八位字节中减去19。无论我如何设置它,它都会返回-19。我读了一组/一个不需要%,但似乎没有任何帮助批处理数学命令不起作用
echo. Enter IP address of the CSR on the site.
echo. Example: 11.152.34.82
set /p IP="IP Address: "
for /F "tokens=1,2,3,4 delims=." %%a in ("%IP%") do echo %%a, %%b, %%c, %%d
pause
set /a z=d - 19
echo. %z%
pause
我也曾尝试
set /a z=%%d - 19
echo. %z%
pause
和
set /a z=%d% - 19
echo. %z%
pause
任何帮助,将不胜感激。
不能使用%% varname,但%varname%in.bat文件 –
您尝试访问循环外部的'%% d',但在那里没有定义 – jeb
您意识到您将不得不做一些数据验证以确保第4个八位字节大于19. – Squashman