我正在尝试使用密码设置代码,其中不同的密码会将您带到另一个目录。所有目录都在同一个.bat文件中,但我想使用另一个.bat来调用密码并带我到目录。我不知道该怎么做,而且发现很难找到主题搜索。
我的代码如下所示:
@echo off
:takemeto
cls
echo Enter Password
set /p name=
call C:\Users\Username\Desktop\Batch files\passwords.bat
:password1
cls
echo You have chosen Password 1
:password2
cls
echo You have chosen Password 2
CALL用于查找和使用我的文件和密码。这些文件有密码和目录,如下所示:
:Passwords
if "%name%" == "password1" goto password1
if "%name%" == "password2" goto password2
/end
希望这很清楚, 感谢-罗布
答案 0 :(得分:0)
让外部批处理脚本回显其输出。使用for /f
循环捕获它。
@echo off
setlocal
set extbat=C:\Users\Username\Desktop\Batch files\passwords.bat
:takemeto
cls
set /p name="Enter Password: "
for /f %%I in ('"%extbat%" %name%') do goto %%I
:invalid
echo Invalid password entered.
set name=
pause
goto takemeto
:password1
cls
echo You have chosen Password 1
goto :EOF
:password2
cls
echo You have chosen Password 2
goto :EOF
示例C:\Users\Username\Desktop\Batch files\passwords.bat
:
@echo off
if #%1==# (
echo takemeto
) else if #%1==#correct1 (
echo password1
) else if #%1==#correct2 (
echo password2
) else echo invalid
...其中correct1
和correct2
是您希望用户输入的密码。