批处理 实现定时关机、注销、重启、锁定等功能

所属分类: 脚本专栏 / DOS/BAT 阅读数: 739
收藏 0 赞 0 分享
复制代码 代码如下:

@ECHO off
TITLE greaterthanme-实现定时关机、注销、重启、锁定等功能。start
CLS
COLOR 1f
rem 使用COLOR命令对控制台输出颜色进行更改
MODE con COLS=41 LINES=18
rem MODE语句为设定窗体的宽和高
set tm1=%time~0,2%
set tm2=%time~3,2%
set tm3=%time~6,2%
ECHO %date% %tm1%点%tm2%分%tm3%秒
ECHO =========================================
ECHO 请选择要进行的操作,然后按回车
ECHO ———————————————
ECHO.
ECHO 1. 定时关机
ECHO 2. 倒计时关机
ECHO 3. 删除定时关机任务
ECHO 4. 查看任务状态
ECHO 5. 刷新当前时间
ECHO 6. 重新启动
ECHO 7. 锁定计算机
ECHO 8. 注销
ECHO 9. 退出
ECHO.cho
SET Choice=
SET P Choice=选择
rem 设定变量Choice为用户输入的字符
IF NOT %Choice%== SET Choice=%Choice~0,1%
rem 如果输入大于1位,取第1位,比如输入132,则返回值为1
ECHO.
IF I %Choice%==1 GOTO SetHour
IF I %Choice%==2 GOTO outtime
IF I %Choice%==3 GOTO delAt
IF I %Choice%==4 GOTO view
IF I %Choice%==5 GOTO start
IF I %Choice%==6 GOTO restart
IF I %Choice%==7 GOTO lock
IF I %Choice%==8 GOTO logoff
IF I %Choice%==9 GOTO end
rem 为避免出现返回值为空或含空格而导致程序异常,需在变量外另加双引号
rem 注意,IF语句需要双等于号
rem 如果输入的字符不是以上数字,将返回重新输入
ECHO 选择无效,请重新输入
ECHO.
GOTO choSetHour
CLS
ECHO.
SET ask=
SET p ask=是否设定为每天执行关机命令(yn)
IF NOT %ask%== SET ask=%ask~0,1%
IF I %ask%==y GOTO yes
IF I %ask%==n GOTO no
GOTO SetHouryes
ECHO 请指定24小时制式时间,格式为 小时分钟
SET shutdowntime=
SET p shutdowntime=输入
at %shutdowntime% everyM,T,W,Th,F,S,Su tsshutdn 0 delay0 powerdown nul
rem 设定为每周的星期一至星期日,即为每天
IF NOT errorlevel 1 GOTO ok
rem 如果输入正确,就执行ok段的语句
ECHO %shutdowntime% 不是标准的时间格式,请重新输入
ECHO.
GOTO yesno
ECHO 请指定24小时制式时间,格式为 小时分钟
SET shutdowntime=
SET p shutdowntime=输入
at %shutdowntime% tsshutdn 0 delay0 powerdown nul
IF NOT errorlevel 1 GOTO ok
ECHO %shutdowntime% 不是标准的时间格式,请重新输入
ECHO.
GOTO nook
ECHO.
SET h=%shutdowntime~1,1%
SET ah=%shutdowntime~0,1%
SET am=%shutdowntime~2,2%
SET bh=%shutdowntime~0,2%
SET bm=%shutdowntime~3,2%
IF %h%== (
SET HM=%ah%时%am%分
) ELSE (
SET HM=%bh%时%bm%分)
rem 如果输入hmm则HM=h时mm分,否则HM=hh时mm分
IF I %ask%==y ECHO 系统将于每天的%HM%关闭
IF I %ask%==n ECHO 系统将于%HM%关闭
ECHO 设定完毕! 按任意键继续...
PAUSE nul
GOTO startouttime
CLS
ECHO.
ECHO 请输入倒计时秒数
ECHO ————————
ECHO (设定后要取消,单击确定后按Ctrl+C键两次)
SET timed=
SET p timed=输入
tsshutdn %timed% delay0 powerdown nul
IF not errorlevel 1 GOTO ok
ECHO %timed% 是无效的关机时间,请重新输入
ECHO.
GOTO outtimedelAt
cls
echo.
at del y
echo 定时关机任务已取消,按任意键继续...
pause nul
GOTO startview
MODE con COLS=85 LINES=18
COLOR 70
ECHO.
at
ECHO 按任意键继续...
PAUSE nul
GOTO startrestart
shutdown -r -t 0lock
rundll32.exe user32.dll,LockWorkStation
goto startlogoff
logoffend
exit
更多精彩内容其他人还在看

XP下WORKSTATION启动慢导致系统启动时间过长问题的解决方法

通常安装过VMwareWorkstation导致系统启动过慢,经分析后,发现WORKSTATION服务启动时间较长,禁用后效果明显,可WORKSTATION是WINDOWS的共享基础服务,像我就离不开这个服务的,所以只需下面的脚本就可以解决问题了
收藏 0 赞 0 分享

IP动态切换bat脚本

因为公司办公室要设置固定IP才行,而家里的IP段和公司是不一样的,家里采用了DHCP机制,这样每次就得改IP设置,很是不方便,就写了这个脚本来动态切换,很流畅的说! WINXP,WIN7测试通过
收藏 0 赞 0 分享

奥汀管理员不切换bat脚本 V1.0-Design by Adobo

很多程序不能在管理员权限下运行,尤其是一些破解的程序。所以写了这个脚本,不影响正常的管理员,也不用切换到USERS账户~
收藏 0 赞 0 分享

cmd NTSD命令用法详解

ntsd 是一条dos命令,功能是用于结束一些常规下结束不了的死进程
收藏 0 赞 0 分享

win2003下杀任何进程的命令(taskkill,ntsd)

才能关掉一个用任务管理器关不了的进程?大多数人想到的都是专门工具,如IceSword。其实用Windows自带的工具就能杀大部分进程
收藏 0 赞 0 分享

Windows和 Linux下生成以当前时间命名文件的方法

在 Windows、Linux 操作系统,分别利用BAT批处理文件和Shell脚本,生成类似“20110228_082905.txt”以“年月日_时分秒”命名的文件
收藏 0 赞 0 分享

用批处理去掉快捷方式上的小箭头图案的代码

用批处理去掉快捷方式上的小箭头图案的代码,需要的朋友可以参考下。
收藏 0 赞 0 分享

xcopy 实现批处理拷贝文件或文件夹

xcopy 是一个很有用的doc命令,应该学习学习,XCOPY 还有众多的功能, 是加参数来完成的。上面的/s /e 参数的作用分别是把子目录和空目录都复制过去
收藏 0 赞 0 分享

安全工具netsh IPSec使用方法[ip安全策略]

IPSec的全称是Internet Protocol Security,翻译成中文就是Internet协议安全性。它的作用主要有两个:一个是保护 IP 数据包的内容,另外一点就是通过数据包筛选并实施受信任通讯来防御网络攻击
收藏 0 赞 0 分享

注册表危险组件删除功能批处理

用批处理实现的删除注册表危险组件的代码,主要应用于服务器,个人电脑不建议使用。
收藏 0 赞 0 分享
查看更多