Batch file 如果选择变量2,批处理文件将保持关闭

Batch file 如果选择变量2,批处理文件将保持关闭,batch-file,adb,Batch File,Adb,我目前正在批量制作自己的ADB工具包菜单 所以我提前测试了批处理文件,但是如果我选择变量2,它总是退出批处理文件。我该怎么办 @echo off :MENU cls title ADB TOOLKIT echo. echo. echo ---------------------------- echo ADB TOOL

我目前正在批量制作自己的ADB工具包菜单 所以我提前测试了批处理文件,但是如果我选择变量2,它总是退出批处理文件。我该怎么办

@echo off
:MENU
cls
title ADB TOOLKIT
echo.
echo.
echo                                              ----------------------------
echo                                              ADB TOOLKIT MADE BY TECHDARK
echo                                              ----------------------------
echo.                            
echo.
echo ----------------------------------------------------
echo 1) Install APK
echo 2) Unlock phone
echo 3) Lock phone
echo ----------------------------------------------------
set /p select=type 1,2 or 3
if %select%==1 goto install
if %select%==2 goto unlock
if %select%==3 goto lock

:install
cls
echo What do you want to install?
set /p Input=Type in apk:
cls
echo installing...
echo.
adb install "apps\%Input%"
pause
goto menu

:lock
cls
adb shell input keyevent 26
cls
echo Your phone is locked!
pause
goto menu

:unlock
cls
echo Do your phone have a password or PIN
set /p pswd==(y/n)
if %pswd%==y goto pswdunlock
if %pswd%==n goto nopswdunlock
pause

:nopswdunlock
cls
adb shell input keyevent 26
cls
echo Your phone is locked!
pause
goto menu

:pswdunlock
cls
echo What is your PIN/Password?
set /p PIN=Type PIN/Pswd here:
cls
echo unlocking
echo.
adb shell input keyevent 26 && adb shell input keyevent 1 && adb shell input text %PIN% && adb shell input keyevent 66
pause
goto menu

对于该任务,我建议使用以下较短的代码:

@echo关闭
:菜单
cls
标题亚洲开发银行工具包
回声。
回声。
回音----------------------------
TECHDARK制作的echo ADB工具包
回音----------------------------
回声。
回声。
回音---------------
1)安装APK
2)解锁手机
回声3)锁定电话
回音---------------
选项/c:123/M“1、2或3型:”/N
cls
如果错误级别3转到锁定
如果错误级别2转到解锁
如果错误级别1,则转到安装
:安装
echo您想安装什么?
设置/p“安装=输入apk:”
cls
echo正在安装。。。
回声。
adb安装“应用程序\%install%”
暂停
转到菜单
:锁
adb外壳输入键事件26
cls
回显您的手机已锁定!
暂停
转到菜单
:解锁
选项/C:yn/M“您的手机是否有密码或PIN?”
如果错误级别2转到nopswdunlock
如果错误级别1转到pswdunlock
暂停
:没有
cls
adb外壳输入键事件26
cls
回显您的手机已锁定!
暂停
转到菜单
:pswdunlock
cls
set/p“PIN=您的PIN/密码是什么?在此处键入:”
cls
回音解锁,请稍候。。。
回声。
adb外壳输入键事件26&&adb外壳输入键事件1&&adb外壳输入文本%PIN%&&adb外壳输入键事件66
暂停
转到菜单

请参阅
choice/?
set/?
以了解有关此处使用的do命令的功能的信息。

您应该怎么说?学习如何正确调试脚本。调试批处理文件的第一条规则是打开脚本顶部的
ECHO,打开命令提示符,直接从命令提示符执行批处理文件,而不是使用鼠标。然后,您将看到脚本的哪一行出现问题,在您的情况下,错误是:
C:\Batch>set/p pswd==(y/n)命令的语法不正确。
您看到
set
命令的问题了吗?查看所有其他
SET
命令。有什么不同?WOOPS lol加了两个等号,伙计,我已经试着找出错误了将近两个小时了lol上帝,我很愚蠢,谢谢你认为通常当代码输入错误时,它会被标记为关闭。你可以选择删除你的问题,我建议你这样做。@Squashman已经指出了你的问题,但是为什么不在这里使用
choice
命令呢?请参见
choice/?