batch-file - 如果我选择变量 2,批处理文件会一直关闭
问题描述
我目前正在批量制作自己的 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 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 ---------------
choice /c:123 /M "Type 1, 2 or 3: " /N
cls
if errorlevel 3 goto lock
if errorlevel 2 goto unlock
if errorlevel 1 goto install
:install
echo What do you want to install?
set /p "install=Type in apk: "
cls
echo Installing...
echo.
adb install "apps\%install%"
pause
goto menu
:lock
adb shell input keyevent 26
cls
echo Your phone is locked!
pause
goto menu
:unlock
choice /C:yn /M "Does your phone have a password or PIN? "
if errorlevel 2 goto nopswdunlock
if errorlevel 1 goto pswdunlock
pause
:nopswdunlock
cls
adb shell input keyevent 26
cls
echo Your phone is locked!
pause
goto menu
:pswdunlock
cls
set /p "PIN=What is your PIN/Password? Type here: "
cls
echo Unlocking, please wait...
echo.
adb shell input keyevent 26 && adb shell input keyevent 1 && adb shell input text %PIN% && adb shell input keyevent 66
pause
goto menu
请参阅choice /?
和set /?
了解有关此处使用的命令的作用的信息。
推荐阅读
- swagger - 使用 NSwag 'AspNetCoreToSwaggerGenerator' 的最佳实践
- python - Python CApi 引用计数详细信息
- node.js - 无法通过依赖 node-gyp 的 npm 安装包
- c# - 如何将数据保存为与 Entity Framework 的一对零或一对一的关系
- winforms - 在 DataGridView 中显示表格(在表单内部)
- python - numpy 更新数组索引
- icalendar - iCal .ics 文件:允许用户确认
- php - 命名空间和包括脚本问题
- python - 每次触发窗口函数
- selenium - 当记录器处于从方法(类 2)调用的方法(类 1)中时,范围报告 2.41 抛出空指针