在批处理开始执行部分,读取用户输入,并根据输入确定是否执行即可。代码如下
set /p r=xxxxx
if %r%==xx exit
balabala
解析:
第一句set /p r=xxxxx, 会在屏幕上输出xxxxx这句字符串,并等待输入,并将输入存储到r中。
第二句,如果输入的值为xx对应的值,这里xx可以是任意字符,比如"N",就是当输入的为大写N时,不执行脚本。这时会执行后面的exit,退出脚本。
第三句,如果第二句判断失败,那么执行脚本。这里的balabala就可以替换成批处理原本要执行的代码了。
呵呵,有时间调整,是没有让你确认这一项,具体的你可以在运行里输入cmd,然后输入shutdown /?还看各个参数的说明,挺容易理解的,呵呵
将你批处理的shutdown那句替换成以下内容
set /p answer=确定重启吗?(Y/N)
if /i %answer%==y (shutdown那句)
好了,就这两句。当你输入y或Y后,就会重启;输入其他字母或不输入任何东西直接回车,就会跳过shutdown命令。
@echo off
title $%time%$
mode con: cols=30 lines=20
:start
cls
set /p nono=关机啦(取消关机请输入N)
if /i "%nono%"=="" goto start
if /i "%nono%"=="N" goto nodown
if /i "%nono%"=="y" goto close
:close
shutdown -s
goto start
:nodown
shutdown -a
@echo 已经取消关机
pause>nul
goto :eof
Y,关机并循环询问是否关机(可以取消关机)
N,取消关机
无输入,无反应