@ECHO off REM 不显示后续命令行及当前命令行 

 TITLE Shutdown countdown REM 设置脚本标题

 COLOR 0A REM 设置脚本 背景色为黑色 前景色为淡绿色

 :start REM 标签引导 开始 

 CLS REM 清空命令行界面

 SET /p time_s=Enter the second number: REM 命名一个变量time_s 并使用 /p 打印右边的字符 等待用户输入 输入完毕后将输入结果保存到 变量 time_s

 ECHO %time_s%|FINDSTR  /BE "[0-9]*" > NUL || GOTO start  REM 通过管道 输出变量 time_s 给 查找字符串命令 判断是否为纯数字 将结果重定向到一个空设备 失败的话执行后面的跳转代码 跳转到 标签引导 开始 

 IF %time_s% EQU 0 GOTO clstime REM 如果变量 time_s 等于 0 跳转到 标签引导 清除关机倒计时计划

 IF %time_s% EQU 1 GOTO exitcmd REM 如果变量 time_s 等于 1 跳转到 标签引导 退出命令行

 IF %time_s% LSS 60 ( REM 如果 变量 time_s 小于 60
ECHO You're sure to shut down in a short time REM 输出提示语句 询问用户是否真的需要设置短时间内关机
CHOICE REM 等待用确认 Y 或 N 并将用户输入的 Y 或 N 的索引 保存到 错误码值 ERRORLEVEL
IF ERRORLEVEL 2 GOTO start REM 如果 错误码值 大于等于 2 即用户输入了 N 则跳转到 标签引导 开始 注意索引是从 1 开始算的
IF ERRORLEVEL 1 GOTO settime REM 如果 错误码值 大于等于 1 即用户输入了 Y 则跳转到
) ELSE IF %time_s% GEQ 60 ( REM 如果 变量 time_s 大于等于 60 则执行小括号内的代码
GOTO settime REM 跳转到 标签引导 设置关机倒计时计划
) :clstime REM 标签引导 清除关机倒计时计划
shutdown.exe -a REM 清除关机倒计时计划
GOTO start REM 跳转到 标签引导 开始 重新输入一个倒计时时间 :settime REM 标签引导 设置关机倒计时计划
shutdown.exe -s -t %time_s% REM 设置关机倒计时计划 -t 参数就是用户输入的整数
ECHO success REM 输出成功提示
PAUSE REM 等待用户输入任意键 :exitcmd REM 标签引导 退出命令行
exit REM 退出命令行

程序意图:

用户输入 0 时 清除关机计划

用户输入 1 时 退出脚本

用户输入 2到59 内 任意数字 时 询问用户是否确定设置如此短的关机倒计时 防止误操作 用户输入 Y 则 设置关机计划 输入 N 则 重新输入 数字

用户输入 大于等于60 的数字时 直接设置关机计划

其它说明:

REM 是单行注释的意思

命令行中输入 command/? 可以查看该命令的说明 例如 REM/?

如果程序跑不通,则将所有的注释清除掉,因为它们都是中文

.bat批处理命令之设置关机倒计时脚本的更多相关文章

  1. 采用.bat批处理命令快速设置Java环境变量

    背景: java课程培训,每次到机房需要重新安装JDK,每次都采用图形界面进行操作比较麻烦(慢),于是在网上查了一下CMD命令设置系统环境变量的方法,再次记录下来. 设置方法: 1.找到JDK安装路径 ...

  2. .bat批处理命令的介绍

    HUC = = D组 http://www.cnhonkerarmy.com/ 63707869 =====================================开始============ ...

  3. 将bat批处理命令文件固定到任务栏

    将bat批处理命令文件固定到任务栏第一种方法:使用链接工具http://www.xstui.com/read/3451.在任务栏点击右键,移动到工具栏,勾选链接工具2.你会在通知栏左侧看到链接字样,将 ...

  4. BATCH(BAT批处理命令语法)

    bat语法备忘扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件[@more@] bat语法备忘扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的 ...

  5. Windows系统批处理命令实现计划关机

    操作步骤: 1.新建一个文本文件,粘贴下面代码,保存为shutdown.bat @echo off echo 请输入延迟关机分钟数 echo 小于1分钟将视为立即关机,负数为取消关机 set /p t ...

  6. mysql 批处理命令执行多个sql脚本

    方法1 若有SQL脚本a.sql, b.sql, 其目录在f盘根目录下, 则可再写一个SQL脚本c.sql(假设其目录也在f盘根目录下, 也可以在其他路径下)如下: source f:/a.sql; ...

  7. bat批处理命令及解释

    相关原文链接 一.批处理概念 批处理文件:包含DOS命令的可编辑可执行文件 批处理:可以对某一对象批量操作的文件 二.批处理命令简介 命令1~10 1 echo 和 @ 回显命令 @ #关闭单行回显 ...

  8. 使用bat批处理命令打包maven项目

    使用批处理命令打包java项目,给我们发布war或jar包带来了很大的便利,附上代码,以作留存. ::huap-parent ::common-parent ::market-parent ::cus ...

  9. bat批处理命令语法总结

    ::1. 关闭回显表示不显示命令本身只显示输出部分 @echo off ::2. 设置变量注意等号间不能有空格 set num=10 ::3. 使用变量 echo %num% ::4. call 调用 ...

随机推荐

  1. Vert.x 异步访问数据库 MySQL

    Vert.x提供异步访问数据库的API,数据库操作是一个耗时操作,使用传统的同步模型,容易阻塞线程,导致整体性能下降,因此我们对于数据库操作,需要使用Vert.x提供的异步API. Vert.x提供的 ...

  2. pandas-08 pd.cut()的功能和作用

    pandas-08 pd.cut()的功能和作用 pd.cut()的作用,有点类似给成绩设定优良中差,比如:0-59分为差,60-70分为中,71-80分为优秀等等,在pandas中,也提供了这样一个 ...

  3. node.js数据库操作

    node 中使用mysql const http = require('http'); const mysql = require('mysql'); const url = require('url ...

  4. Android为TV端助力之解析序列话的JSON

    解析json时报错default constructor not found. class............. 比如 public class MediaRepBean implements P ...

  5. KVM on CubieTruck 原理以及网络性能相关思考

    1.virtio框架包括哪些? (1)virtio:面向guest驱动的API接口,它在概念上将前端驱动附加到后端驱动,具体实现位于driver/virtio/virtio.c (2)Transpor ...

  6. C# 认识 接口

    一.什么是接口 C#接口中包含方法.属性.索引器和事件的声明,但常用的接口中一般就是方法和属性,然而接口中并没有方法的具体实现代码(不能提供任何成员实现),只有方法的返回类型和方法名.一个类实现了某个 ...

  7. MYSQL慢查询优化方法及优化原则

    1.日期大小的比较,传到xml中的日期格式要符合'yyyy-MM-dd',这样才能走索引,如:'yyyy'改为'yyyy-MM-dd','yyyy-MM'改为'yyyy-MM-dd'[这样MYSQL会 ...

  8. 线性回归-API

    线性回归的定义 利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式 线性回归的分类 线性关系 非线性关系 损失函数 最小二乘法 线性回归优化方法 正规方程 ...

  9. python爬取数据分析

    一.python爬虫使用的模块 1.import requests 2.from bs4 import BeautifulSoup 3.pandas 数据分析高级接口模块 二. 爬取数据在第一个请求中 ...

  10. 计算机网络基础之IP地址详解

    计算机网络基础之IP地址详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IP地址概述 1>.什么是IP地址 我们为什么要使用逻辑地址(IP地址)来标识网络设备,而不采 ...