关于批处理的问题

我想在一个批处理中添加一个步骤.
就是说,使用者可以选择是或者否,如果否的话,就继续下一步的命令,是的话,就输出:谢谢使用.然后退出程序!

使用“SET /P 变量=”这个语句可以获取输入内容到%变量%里面,比如下面的语句:
set /p choice=
运行的时候,屏幕会等你输入,输入的内容可以如下显示出来:
echo %choice%

完整的批处理选择运行例子如下:

@echo off
color 1e
title 命令选择程序
goto :menu

:menu
cls
echo. ★★★★★★★★ 批处理启动器 ★★★★★★
echo.
echo. 1 启动远程桌面
echo.
echo. 2 查看系统服务
echo.
echo. 3 运行cmd
echo.
echo. 4 查看系统进程
echo.
echo. 5 解除系统限制
echo.
echo. 6 打开画图
echo.
echo. 7 打开计算器
echo.
echo. 8 退出选择
echo.
echo.
echo.
:cho
set choice=
set /p choice= 请选择:
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%
if /i "%choice%"=="1" goto radmin
if /i "%choice%"=="2" goto services
if /i "%choice%"=="3" goto cmd
if /i "%choice%"=="4" goto tasklist
if /i "%choice%"=="5" goto unlock
if /i "%choice%"=="6" goto mspaint
if /i "%choice%"=="7" goto calc
if /i "%choice%"=="8" goto end
echo 选择无效,请重新输入
echo.
goto menu

:radmin
mstsc
goto :menu

:services
services.msc
goto :menu

:unlock
regsvr32 /u /s stshell.dll
echo 解除成功 & pause
goto :menu

:mspaint
mspaint
goto :menu

:calc
calc
goto :menu

:tasklist
tasklist
echo.
echo 所有进程显示完毕
pause
goto :menu

:cmd
start cmd
goto :menu

:END
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-04-18
@echo off
>%Temp%\Temp.vbs echo set WshShell = WScript.CreateObject("WScript.Shell")
>>%Temp%\Temp.vbs echo intAnswer = MsgBox("是否要查询计算机的用户?", vbExclamation + vbYesNo, "请说实话")
>>%Temp%\Temp.vbs echo If intAnswer = vbYes Then
>>%Temp%\Temp.vbs echo Wscript.Echo "YES"
>>%Temp%\Temp.vbs echo end if
>>%Temp%\Temp.vbs echo If intAnswer = vbNo Then
>>%Temp%\Temp.vbs echo Wscript.Echo "NO"
>>%Temp%\Temp.vbs echo end if
for /f "delims=" %%i in ('"cscript //nologo %Temp%\Temp.vbs"') do goto %%i
goto oef

:YES
net user
pause
goto eof

:NO
msg /V /TIME:3 %username% 谢谢使用!
goto eof

:eof
相似回答