BAT批处理中choice的使用示例

本文介绍如何在CMD中使用choice命令实现用户交互选择,并通过示例展示了如何设置CMD窗口的颜色和大小,以及如何读取用户的选择结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@echo off 
::设置CMD窗口字体颜色为0a 在CMD中输入命令 color /? 可查看颜色列表
color 0a
::设置CMD窗口显示模式为100列宽 20行高
MODE con: COLS=100 LINES=20
echo  -------------------
echo    choice 命令示例
echo  -------------------
echo.
echo.
:: /c按键列表 /m提示内容 /d默认选择 /t等待秒数   /d 必须和 /t同时出现
choice  /c abcde /m "请输入" /d e /t 5

::用户选择的结果会按项目序号数字(从1开始)返回在errorlevel变量中
if %errorlevel%==1 echo 你选择了a
if %errorlevel%==2 echo 你选择了b
if %errorlevel%==3 echo 你选择了c
if %errorlevel%==4 echo 你选择了d
if %errorlevel%==5 echo 你选择了e

<think>好的,我需要帮助用户了解如何通过批处理文件(BAT)在Windows中设置定时关机任务计划。根据用户提供的三个引用内容,我需要综合这些信息来给出清晰的步骤和示例。 首先,用户提到的三个引用中,引用[2]使用了schtasks命令来创建计划任务,而引用[1]和[3]则是通过shutdown命令直接设置倒计时关机。用户的问题是关于任务计划的,所以schtasks的方法会更符合需求,但可能也需要提到shutdown的替代方法。 我需要先解释两种不同的方法:一种是使用计划任务(schtasks),另一种是使用shutdown命令带时间参数。用户可能想知道这两种方法的区别和具体操作步骤。 接下来,我应该分步骤说明每种方法的具体实现。例如,使用schtasks创建每日定时关机的批处理脚本,以及使用shutdown设置倒计时关机的脚本。同时,需要指出两者的不同,比如计划任务更适合每天固定时间执行,而shutdown适合一次性任务。 另外,用户提供的引用[3]中有菜单驱动的批处理示例,这可以作为高级用法的参考,但用户的问题可能更关注基础设置。所以可能需要提到这个菜单脚本作为可选的高级示例,但主要焦点还是在基础步骤上。 需要注意的是,引用中的代码可能存在一些格式问题,比如&符号在批处理中的正确使用,可能需要调整代码示例以确保语法正确。例如,引用[3]中的“&”符号需要正确转义或分隔命令。 此外,需要提醒用户以管理员权限运行这些批处理文件,因为创建计划任务或执行关机命令可能需要管理员权限。 最后,生成相关问题,帮助用户进一步了解如何取消任务、处理错误情况或其他相关操作。</think>### 分步说明:通过BAT文件设置Windows定时关机任务计划 #### 方法1:使用计划任务(schtasks命令) ```batch @echo off schtasks /create /sc daily /tn "AutoShutdown" /tr "shutdown.exe /s /t 60" /st 23:00 echo 自动关机任务已设置,将在每天23:00自动关机[^2] pause ``` **操作步骤**: 1. 新建文本文件,粘贴上述代码 2. 保存为`.bat`格式(如`ShutdownTask.bat`) 3. 右键选择"以管理员身份运行" 4. 系统将创建每天23:00自动关机任务(提前60秒提示) **参数说明**: - `/sc daily`:设置每日执行 - `/tn "任务名称"`:自定义任务名称 - `/st 23:00`:设置具体执行时间 - `/t 60`:关机前等待60秒 #### 方法2:使用shutdown命令倒计时 ```batch @echo off set /p m=请输入关机倒计时(分钟): set /a time=m*60 shutdown -s -t %time% echo 电脑将在%m%分钟后关机[^3] pause ``` **特点对比**: | 方法 | 执行方式 | 适用场景 | 需要管理员权限 | |-----------|--------|---------------|---------| | 计划任务 | 定时循环 | 长期固定时间关机 | 是 | | shutdown | 单次倒计时 | 临时性关机任务 | 否 | #### 高级应用:菜单交互式脚本 ```batch @echo off title 智能关机程序 :menu echo --------- 功能菜单 --------- echo 1. 创建每日定时关机任务 echo 2. 设置倒计时关机 echo 3. 取消所有关机计划 echo 4. 退出程序 set /p choice=请选择操作编号: if %choice%==1 ( schtasks /create /sc daily /tn "AutoShutdown" /tr "shutdown /s /t 60" /st 23:00 echo 已创建每日23:00关机任务[^2] ) else if %choice%==2 ( set /p m=输入关机倒计时(分钟): shutdown -s -t !m! -f ) else if %choice%==3 ( schtasks /delete /tn "AutoShutdown" shutdown -a echo 已取消所有关机计划[^3] ) else if %choice%==4 ( exit ) pause goto menu ``` **注意事项**: 1. 创建系统级任务需右键选择"以管理员身份运行" 2. 时间格式必须符合24小时制(如23:00) 3. 可通过`schtasks /query`查看现有任务 4. 使用`shutdown -a`可随时取消关机计划
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值