本文章以极简的方式展现,相信能够浏览到这篇文章的人都对批命令有了一定的了解,我不会把文章写的长篇大论
重要!!! (命令/?)查看帮助文档 (命令/help)查看详细帮助文档
附:思维导图
批处理编程初次体验
什么时批处理程序
- Batch file programming是微软操作系统自带原生的开发语言,不需要构建任何环境就可以执行的脚本。
- Batch file批处理文件使用cmd.exe执行
如何编辑批处理程序
- 不需要安装如何的文本编辑器,只需要使用Windows自带的终端编写程序即可
批处理可以干什么
-
使用一组内置命令进行自动化操作
- 例如:匹配规则删除文件
- 新建文件,日志等
- 甚至可以批量创建计算机病毒
初次体验,输出Hello World
- echo off
- echo "Hello World"
- Pause //使程序停止
命令分类
-
内部命令
- cls(清空当前窗口),ipconfig(查看当前的ip地址)等
-
外部命令
- Java,python等
批处理运算操作
算术运算
-
(乘[ * ])(除[ / ])(取余[ % ])(减[ - ])
-
命令模式
- set/a+运算表达式
- 文本模式
-
-
运算优先级可以使用()来进行调整
重定向运算
-
(>)
-
(>>)
-
<
-
<<
-
查看文件内容( type )
-
关系运算符
- < 小于
- (>)大于
多命令运算符
-
&&
- 短路与, 第一个命令错误则第二个命令不会执行
-
||
- 短路或, 只要有一个命令正确就会执行,但只会执行一条
管道符号
-
|
- 执行命令|find(筛选条件)
批处理基本命令
命令格式
- 命令 字命令 参数 操作 选项
- 命令帮助信息查看 /? /help获取详细的帮助信息
批处理文件的参数传递
-
.bat文件接受参数使用 %num
-
net user %1 %2/add
-
注释符拓展
- rem comment
炫酷命令提示符
-
颜色命令
- color
-
标题命令
- title
时间相关命令
- date(获取年月日,周几)
- time(获取时间)
启动命令
-
start
- /B
调用其他bat文件
- call
任务列表查看命令
- tasklist
任务关机命令
- taskkill
以树的结构结构查看当前文件
- tree
关闭计算机
- shutdown
计划任务命令
- schtasks
批处理环境变量
- set
文件夹或文件相关命令
目录浏览
- dir
目录新建与浏览
- md(新建)
- rd(删除)
目录切换
- cd
目录重命名
- red
目录复制
- copy
文件删除
- del
文件剪切
- move
网络相关命令
用户操作命令
- net user
用户组操作系统
- net localgroup
网络连通性检测命令
- ping
网络连接命令
- telnet
网络适配命令
- ipconfig
路由信息查看
- tracert
APP信息命令
- arp
条件判断语句
if-else
文件是否存在
- exist
循环结构
遍历目录(文件夹名称)
- for /d %名称 in (路径/*) do 具体操作
遍历目录和子目录下的文件
- for /r "目录路径" %变量名 in(匹配正则 例如*。py)do 执行操作 %变量名
遍历数字
- for /L %变量名 in(start,step,end) do 具体操作
遍历文件内容
- for /F %变量名(文件名)do 具体操作
编程实际案例
交互操作
-
从控制台录入信息
- set /p 变量名=
-
使用跳转语句
- goto
计划执行
- at
代码块
- :name
Virus脚本分析
目录重复新建代码分析
- 利用goto语言重复新建(md)
DNS污染代码分析
- hosts文件
窗口Bomb代码分析
- 利用call可以调式bat文件
用户泛洪flood
- 使用%random%
BAT转EXE程序
- Bat to Exe Conveter 工具