问题程序》dos

来源:百度知道 编辑:UC知道 时间:2024/09/21 21:57:55
@echo off
shutdown -s -t 25
:start
cls
echo .
echo .
echo the the the
echo .
echo .

set choose=
set /p=choose
if /i "%choose&%"=="enter" goto start
if /i "%choose%"=="lzw" goto run
if /i "%choose%"=="*" goto ech

:run
shutdown -a
exit

:ech
echo 靠!不知道就不要乱打!
pause

我是想在我的电脑加个密码。但是不在用户组里面加!
这个显然是错误的
我的最终目的是他按任何密码意外的键都会显示ech
密码是能解除关机的!
淡然!会批处理的能解开这个关机!
我猜测会用上另外的变量!
都会出现问题

::我觉得下面可能是你想要的。

@echo off
shutdown -s -f -t 250
:start
cls
echo .
echo .
echo the the the
echo .
echo .

set choose=
set /p choose="请输入密码"
if /i "%choose%"=="enter" goto start
if /i "%choose%"=="lzw" goto run

goto ech

:run
shutdown -a
exit

:ech
echo 靠!不知道就不要乱打!
goto start

if /i "%choose%"=="*" goto ech
改为
goto ech

有两个错误,修正即可:

(1) set /p=choose 应为 set /p choose =

(2) if /i "%choose%"=="*" goto ech 应为 goto ech

如果仅修改第(2)处,第(1)没有修改,仍然是错的,会显示“此时不应有goto”

完整程序如下:
==========================================================
@echo off
shutdown -s -t 25
:start
cls
echo .
echo .
echo the the the
echo .
echo .

set /p choose= <