bat文件可直接鼠标双击运行。
bat是dos下的批处理文件,批处理文件是无格式的文本文件,它包含一条或多条命令。
它的文件扩展名为.bat或.cmd,在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。
扩展资料:
批处理文件(batchfile)包含一系列DOS命令,通常用于自动执行重复性任务。用户只需双击批处理文件便可执行任务,而无需重复输入相同指令。编写批处理文件非常简单,但难点在于确保一切按顺序执行。
编写严谨的批处理文件可以极大程度地节省时间,在应对重复性工作时尤其有效,在Windows中善用批处理可以简化很多重复工作。
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理。批处理文件的扩展名为bat。DOS批处理则是基于DOS命令的,用来自动地批量地执行DOS命令以实现特定操作的脚本。
系统在解释运行批处理程序时,首先扫描整个批处理程序,然后从第一行代码开始向下逐句执行所有的命令,直至程序结尾或遇见exit命令或出错意外退出。
参考资料来源:百度百科-bat文件
虽然大家学过了一些Windows的命令,但用批处理来与用户交互并实现自动关机可能还没有试过吧.自己做一个关机程序,感觉可不一样,分享了电脑自动关机bat 编写代码,一起来看看吧!
第一步:
打开记事本,输入下面的文字(以rem开头的语句是注释,可以不必输入).
复制代码 代码如下:
@echo off
title系统关机akiecarry
:loop
cls
color bc
echo.
echo.
echo *** WINDOWSXP 快速关机系统 ***
echo.
echo 快速关机……………………请直接回车
echo 开始倒计时关机……………请输入1+回车
echo 设定时间点关机……………请输入2+回车
echo 显示计时关机………………请输入3+回车
echo 设定每天关机………………请输入4+回车
echo 取消系统关机………………请输入5+回车
echo 退出…………………………请输入6+回车
echo.
echo.
set a=
set /p a= 【 请输入 】:
if "%a%"=="1" goto aaa
if "%a%"=="2" goto bbb
if "%a%"==" " goto ccc
if "%a%"=="" goto ddd
if "%a%"=="3" goto eee
if "%a%"=="4" goto fff
if "%a%"=="q" exit
goto loop
:ddd
@echo off
color e5
cls
echo.
echo.
echo 〖系统即将关机并结束进程〗
pause
echo.
::ntsd -c q -pn %run%
taskkill /f /t /im pfw.exe /f /t /im internat.exe /f /t /im explorer.exe
shutdown -s -f -t 0 -c "取消请运行shutdown -a"
exit
:aaa
@echo off
color f4
echo.
echo.
echo.
echo 现在将设置系统自动关机,请在此输入倒计时秒数后回车,系统将在设定时间自动关闭
set mytime=
set /p mytimes= 【 倒计时关机请输入 小时数】:
set /a mytimes=%mytimes%*3600
set /p mytimef= 【 倒计时关机请输入 分钟数】:
set /a mytimef=%mytimef%*60
set /p mytimem= 【 倒计时关机请输入 秒 数】:
set /a mytime=%mytimes%+%mytimef%+%mytimem%
shutdown -s -t %mytime% -c "取消请运行shutdown -a"
cls
echo.
echo 〖系统将在%mytime%秒后关机〗
echo.
pause
goto loop
:bbb
@echo off
color f9
echo.
echo.
echo.
echo 现在将设置系统自关机,请在此输入关机时间(如12:00)回车,系统将定时自动关闭
set mytimes=
set mytimef=
set /p mytimes= 【 定时关机请输入 时】:
set /p mytimef= 【 定时关机请输入 分】:
at %mytimes%:%mytimef% shutdown -s -t 0
::这表示在mytime分执行shutdown -s -t 0操作.如果当前时间大于任务执行时间,则默认为明日执行,0为倒计时时间.
echo.
echo 〖现在将显示所有计划〗
echo
at
echo
pause
::显示计划并暂停
goto loop
:ccc
@echo off
color f2
echo.
echo.
echo.
echo 〖现在将设置取消系统自动关机〗
echo.
pause
shutdown -a
echo.
echo.
echo 〖现在将显示所有计划,在回车后取消计划且无须确认〗
echo
at
echo
pause
at /del /yes
::取消所有计划并无须确认
cls
echo.
echo 〖系统已经取消自动关机〗
echo 〖系统已经取消所有计划任务〗
echo.
pause
goto loop
:eee
@echo off
color f4
echo.
echo.
echo.
echo 现在将设置系统自动关机,请在此输入倒计时秒数后回车,系统将在设定时间自动关闭
set mytime=
::此行是为了清mytime变量值,以免在不注意的情况下存在变量值,此为一种好的习惯.
set mytimes=0
::赋值为0是为了使%mytimes%不致于无意义,下同.
set mytimef=0
set mytimem=0
set /p mytimes= 【 倒计时关机请输入 小时数】:
set /a mytimes=%mytimes%*3600
set /p mytimef= 【 倒计时关机请输入 分钟数】:
set /a mytimef=%mytimef%*60
set /p mytimem= 【 倒计时关机请输入 秒 数】:
color a3
mode con cols=30 lines=4
set /a mytime=%mytimes%+%mytimef%+%mytimem%
SET wait=ping -n 2 127.0.0.1 ^>^nul
for /l %%n in (%mytime%,-1,0) do (
rem cls
echo *******************
echo 〖%%n秒后自动关机〗
echo *******************
%wait%
cls
)
shutdown -s -t 0
goto loop
:fff
@echo off
color f9
echo.
echo.
echo.
echo 现在将设置系统每天运行自关机
echo.
set myopengs=
set /p myopengs= 【重复设定请输入单空格+回车,单次及最后一次设定请回车】
echo.
echo 请在此输入关机时间(如12:00)后回车,系统将定时关闭
echo.
set mytimes=
set mytimef=
set /p mytimes= 【 定时关机请输入 时】:
set /p mytimef= 【 定时关机请输入 分】:
at %mytimes%:%mytimef% /EVEry:M,T,W,Th,F,S,Su shutdown -s -f
echo.
echo 〖现在将显示所有计划〗
echo
at
echo
pause
::显示计划并暂停
if "%myopengs%"==" " goto :fff
goto loop
用记事本编写,另保存为.bat即可
运行后界面为:
***************************************************************************************
echo *** WINDOWSXP 快速关机系统 ***
echo.
echo 快速关机……………………请直接回车
echo 开始倒计时关机……………请输入1+回车
echo 设定时间点关机……………请输入2+回车
echo 显示计时关机………………请输入3+回车
echo 设定每天关机………………请输入4+回车
echo 取消系统关机………………请输入5+回车
echo 退出…………………………请输入6+回车
第二步:
输入完毕后,保存文件,在"保存"对话框中将"保存类型"选择为"所有文件",文件名为"自动关机程序.bat"即可.
第三步:
看看这个程序的后缀名是bat的,而且图标也很土,不要急,我们可以用WinRAR3.0以上版本将这个批处理文件做成一个exe文件,方法如下:
如果你的系统未安装WinRAR请先安装
选择"自动关机程序.bat",在右键菜单中选择"添加到档案文件(A)…"
在"压缩选项"中选择"创建自释放格式档案文件"
单击"高级"标签,单击"SFX选项",打开"高级自释放选项"在"常规"选项卡中"释放后运行"内输入压缩的文件名"自动关机程序.bat"
单击"模式"标签,选择"解包到临时文件夹",在缄默模式"内选择"全部隐藏",在"覆盖方式"内选择"覆盖所有文件"
如果您要更改默认的图标,可以打开"文本和图标"标签,在"自定义SFX文件图标"的"从文件载入SFX图标"下的.文本框中输入或浏览您喜欢的图标所在路径.如果你没有准备图标,可以打开系统所在盘后,使用搜索,在搜索文件名内输入"*.ico"就可以找到很多图标了,把找到的图标路径和文件名输入文本框即可.
依次确定后,即在原文件夹内多了一个"自动关机程序.exe"的文件了,大功现已造成啦!
先解释这段"%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
其实就是用cacls.exe这个权限设置的命令去测试一下后面那个system文件的权限。如果权限不够就会报错,错误等级会变成1
现在解释>nul 2>&1
其中>nul是命令返回正确信息后不显示其反馈结果。
而2>&1其实是重定向,也就是调用>nul,那么就等同于2>nul,这个是用于不显示错误信息的命令
那么>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"这句其实是"%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" >nul 2>nul
批处理中>这种情况的命令,是可以写到命令前面去的。
现在解释set params = %*:"=""
其实就是把脚本文件后面跟上的内容中单双引号"替换成双双引号"",然后赋值到params变量上去。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)