DOC命令和批处理命令
2024-10-19 13:01:29
本文章以极简的方式展现,相信能够浏览到这篇文章的人都对批命令有了一定的了解,我不会把文章写的长篇大论
重要!!! (命令/?)查看帮助文档 (命令/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 工具
最新文章
- BPM流程中心解决方案分享
- ECMAScript 6 开篇准备
- ORA-01113: file xxxx needs media recovery
- vs2012 error c4996: This function or variable may be unsafe
- Java多线程系列--“JUC集合”01之 框架
- [CareerCup] 18.13 Largest Rectangle of Letters
- AX 用代码创建FORM动态加控件,重载动态添加的控件的方法。
- js禁止页面复制 禁用页面右键菜单的代码
- linux中压缩与解压缩命令小结
- 为什么不能用 JS 获取剪贴板上的内容?
- 【Java多线程】线程状态、线程池状态
- flask+mako+peewee(上)
- Struts2 的 配置
- thinkCMF----自定义配置调用
- Redis持久化配置-AOF
- Linux-C语言标准输入输出
- 科学计算三维可视化---Mayavi可视化实例
- RabbitMQ学习(一):RabbitMQ要点简介
- Django 模型(数据库)
- HDFS NameNode HA 部署文档