注意:我几乎不知道批处理文件“for”循环是如何工作的。
我当前拥有的批处理文件:
"C:\Program Files (x86)\HMA! Pro VPN\bin\HMA! Pro VPN.exe" -connect
"C:\Program Files (x86)\HMA! Pro VPN\bin\HMA! Pro VPN.exe" -changeip
ping -w 2000 -n 1 1.1.1.1
:wait
for /f "usebackq tokens=1,2,3,*" %A in (`netsh interface show interface`) do @if "%D"=="Local Area Connection 2" set state=%B
if %state%==Connected goto :end
goto :wait
:end
我正在尝试编写一个利用 HMA 的强大 IP 更改器! Pro VPN - 无论 VPN 客户端是否打开,以及 VPN 当前是否打开,它都应该工作,并且应该暂停,直到 VPN 连接。
如果你谷歌 for 循环,你会看到它出现在 stackoverflow 答案中 - 这个 for 循环在 CMD 提示符下工作得很好,并将 %state% 设置为已连接/已断开连接,但在批处理文件中,会抛出以下错误:
D"=="Local was unexpected at this time.
如果我的日程安排不是很紧张的话,我会更多地了解 for 循环 - 我have之前了解过这些,但这个循环对我来说看起来很奇怪。
在批处理文件中,您必须使用两个百分比FOR
参数,仅此而已
for /f "usebackq tokens=1,2,3,*" %%A in (`netsh interface show interface`) do (
if "%%D"=="Local Area Connection 2" set state=%%B
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)