所以我有这个简单的快捷方式脚本,但是当我选择一个高于9的数字时,它会打开授权管理器并且无法识别第二个数字。我玩过这些设置,但无济于事,谷歌对这个设置没什么帮助。
@title Microsoft Management Console
@echo ┌───────────────MAIN MENU─────────────────▄
@echo │Choices: █
@echo │ █
@echo │ 1. Authorization Manager █
@echo │ 2. Certificates Local Computer █
@echo │ 3. Certificates Current User █
@echo │ 4. Component Services █
@echo │ 5. Computer Management █
@echo │ 6. Device Manager █
@echo │ 7. Disk Manager █
@echo │ 8. Event Viewer █
@echo │ 9. Local Users Manager █
@echo │10. Performance Manager █
@echo │11. Print Server █
@echo │12. Services █
@echo │13. Shared Folder Manager █
@echo │14. SQL Server Config █
@echo │15. Task Scheduler █
@echo │16. Windows Firewall █
@echo │17. Exit █
@echo │ █
@echo └▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
@set /p userinp=Type the number of your choice:
@set userinp=%userinp:~0,1%
@if "%userinp%"=="1" azman.msc
@if "%userinp%"=="2" certlm.msc
@if "%userinp%"=="3" certmgr.msc
@if "%userinp%"=="4" comexp.msc
@if "%userinp%"=="5" compmgmt.msc
@if "%userinp%"=="6" devmgmt.msc
@if "%userinp%"=="7" diskmgmt
@if "%userinp%"=="8" eventvwr.msc
@if "%userinp%"=="9" lusrmgr.msc
@if "%userinp%"=="10" perfmon.msc
@if "%userinp%"=="11" printui /s /t2
@if "%userinp%"=="12" services.msc
@if "%userinp%"=="13" fsmgmt.msc
@if "%userinp%"=="14" sqlservermanager10.msc
@if "%userinp%"=="15" taskschd.msc
@if "%userinp%"=="16" wf.msc
@if "%userinp%"=="17" exit
答案 0 :(得分:2)
更改
@set userinp=%userinp:~0,1%
到
@set userinp=%userinp:~0,2%
在原始版本中,您从第0个字符开始请求1个字符。第一个数字表示起始字符索引,第二个数字表示要获取的字符数。