我正在尝试批量制作程序安装程序。它会将其他批处理文件安装到可移动媒体或本地硬盘驱动器上。我正在尝试制作一个IF语句,让用户决定在哪里安装它。第一步是使用硬盘还是外部存储器。当我选择硬盘驱动器时它工作正常,但当我选择外部存储器时,它会同时运行硬盘驱动器代码和外部存储器代码。这是我的代码:
@ECHO OFF
color 0a
TITLE Installer
ECHO Where would you like to install this?
ECHO.1) Hard Drive
ECHO.2) Removable Media
CHOICE /C:12 /N
IF ERRORLEVEL ==1 (
ECHO Hard Drive
)
IF ERRORLEVEL ==2 (
ECHO Removable Media
)
PAUSE
答案 0 :(得分:1)
IF ERRORLEVEL ==1
ERRORLEVEL
永远不会等于1
你需要
IF %ERRORLEVEL%==1
或
IF ERRORLEVEL 1
(其中后者表示“如果errorlevel为1或大于1)
答案 1 :(得分:0)
来自official documentation(强调我的):
errorlevel number:仅在前一个条件下指定true条件 由Cmd.exe运行的程序返回退出代码等于或大于 比数。