我正在尝试在某个驱动器可用的情况下运行应用程序,或者如果不是,则在本地运行相同的应用程序。
目前它正在从两个地点启动应用程序,我错过了什么?
@echo off
REM bat file to determine where to launch app
IF EXIST I:\ GOTO launchfromNetwork
ELSE GOTO launchLocally
:launchfromNetwork
START I:\Application.exe
:launchLocally
START C:\ApplicationFolder\Application.exe
答案 0 :(得分:0)
在批处理文件中,标签只是一个可以调用或跳转的地方,但不会为代码执行创建障碍。
@echo off
REM bat file to determine where to launch app
IF EXIST I:\ GOTO launchfromNetwork
:launchLocally
START C:\ApplicationFolder\Application.exe
goto :eof
:launchfromNetwork
START I:\Application.exe
goto :eof
不需要ELSE
子句,好像IF
未评估为true,代码在下一行继续执行,标签不是障碍。
这就是样本中goto :eof
的原因,避免在到达下一部分时继续执行代码