2025年批处理 命令(批处理命令教程)

批处理 命令(批处理命令教程)批处理 Batch 也称为批处理脚本 顾名思义 批处理就是对某对象进行批量的处理 通常被认为是一种简化的脚本语言 它应用于 DOS 和 Windows 系统中 批处理文件的扩展名为 bat 或 cmd 通常我们指定的批处理指 DOS 批处理脚本 DOS 批处理则是基于 DOS 命令的 用来自动地批量地执行 DOS 命令以实现特定操作的脚本 更复杂的情况 需要使用 if for



  • 批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于 DOS 和 Windows 系统中。批处理文件的扩展名为 bat(或 cmd)。通常我们指定的批处理指 DOS批处理脚本。
  • DOS 批处理则是基于 DOS 命令的,用来自动地批量地执行 DOS 命令以实现特定操作的脚本。更复杂的情况,需要使用if、for、goto等命令控制程式的运行过程,如同 C、Python 等高级语言一样。如果需要实现更复杂的应用,利用外部程式是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。批处理程序虽然是在命令行环境中运行,但不仅仅能使用命令行软件,任何当前系统下可运行的程序都可以放在批处理文件中运行。

常用命令也可见文章:链接

  • cd 显示当前目录名或改变当前目录。
  • md 创建目录。
  • rd 删除一个目录。
  • dir 显示目录中的文件和子目录列表。
  • tree 以图形显示驱动器或路径的文件夹结构。
  • path 为可执行文件显示或设置一个搜索路径。
  • xcopy 复制文件和目录树。
  • type 显示文本文件的内容。
  • copy 将一份或多份文件复制到另一个位置。
  • del 删除一个或数个文件。
  • move 移动文件并重命名文件和目录。(Windows XP Home Edition中没有)
  • ren 重命名文件。
  • replace 替换文件。
  • attrib 显示或更改文件属性。
  • find 搜索字符串。
  • fc 比较两个文件或两个文件集并显示它们之间的不同
  • ping 进行网络连接测试、名称解析
  • ftp 文件传输
  • net 网络命令集及用户管理
  • telnet 远程登陆
  • ipconfig显示、修改TCP/IP设置
  • msg 给用户发送消息
  • arp 显示、修改局域网的IP地址-物理地址映射列表
  • at 安排在特定日期和时间运行命令和程序
  • shutdown立即或定时关机或重启
  • tskill 结束进程
  • taskkill结束进程(比tskill高级,但WinXPHome版中无该命令)
  • tasklist显示进程列表(Windows XP Home Edition中没有)
  • sc 系统服务设置与控制
  • reg 注册表控制台工具
  • powercfg控制系统上的电源设置

在bat脚本中,我们使用 和 添加注释,用法如下:

 

注意

  • 只能出现在每一行的开头,其后的内容被当作注释
  • 可用于任何位置,其后的内容被当作是注释

变量类型包括:数字、字符串及数组。

 
 

注意:

  • 变量名与内容之间通过连接且没有空格

在bat脚本中,if条件判断语句共有6种比较操作符,分别为

操作符描述全称equ等于equalneq不等于no equallss小于less thanleq小于等于leq less than or equalgtr大于greater thangeq大于等于geq greater than or equal

注意:

  • 只有等于操作符可以使用符号 表示
  • 前面必须有空格!!!!
 
 
 

遍历指定目录的所有目录

 

遍历文件中的每一行

 
 
 

:选项表示结束当前的批处理脚本或子例程。
: 用于指定退出码。如果未提供 exitCode,则默认退出码为上一个命令的返回码。

 
 
 
 
 

7.1 字符串连接

 

这将输出 Hello World。在批处理中,可以使用 % 符号来引用变量,并使用空格将字符串连接起来。

7.2 字符串截取

 

这将输出 abc。:~ 后跟的是截取的起始索引和长度。在这个例子中,0,3 表示从索引 0 开始截取,长度为 3。

7.3 字符串查找:

 

这将输出 cdef。如果省略长度,则从指定的索引开始一直截取到字符串末尾。

7.4 字符串替换:

 
 

用于启用延迟扩展(Delayed Expansion)模式,它是 Windows 批处理脚本中的一个特性。在启用延迟扩展后,! 可以用来获取变量的值,而不仅仅是 %。

在默认模式下,批处理脚本在执行代码块时会提前替换变量的值,因此如果在一个代码块中改变了变量的值,这个改变后的值在同一个代码块中将不会被正确地获取。启用延迟扩展后,可以使用 ! 来延迟获取变量的值,使得在代码块内部修改变量后,可以正确地获取到修改后的值。
用于结束由 开始的本地环境,恢复到调用 之前的环境状态。

在批处理脚本中, 用于创建一个本地环境,这个本地环境中的变量和状态只对当前批处理文件有效,不会影响到其他批处理文件或者批处理文件的外部环境。 用于关闭这个本地环境,恢复到调用 之前的环境状态。
这样做的好处是可以在脚本中创建临时的环境,进行一些操作,而不用担心对外部环境产生影响。通常在脚本的末尾会使用 来确保脚本结束时本地环境被正确关闭,以免影响到其他的脚本执行。

可参考文件:链接

注意,bat 脚本不区分大小写。

:: 用于进行文本的注释,执行后不会回显内容。
rem 用于文本注释,执行后会回显内容。

@字符放在命令前将关闭该命令回显,⽆论此时echo是否为打开状态。

  • 打开回显功能:
  • 关闭回显功能:
  • 输出空行: 或 或 或 等
  • 显示当前echo状态:
  • 输出提示信息:
  • 答复提问:
  • 新建文件:
  • 新增内容:
  • 喇叭鸣响:

使当前程序暂停,并输出以下内容,作用是为了让我们知道程序运行到哪步了。
显示其他提示语:

在这里插入图片描述

获取程序返回码:
每个命令运⾏结束,可以⽤这个命令⾏格式查看返回码。⽤于判断刚才的命令是否执⾏成功,默认值为0,⼀般命令执⾏出错会设 errorlevel 为1。

设置cmd窗口的标题,语法如下:

 

在这里插入图片描述

设置默认控制台的前景色和背景色,语法如下:

 

颜⾊属性由两个⼗六进制数字指定 – 第⼀个为背景色,第⼆个则为前景色。每个数字可以为以下任何值之⼀。

数值颜色数值颜色0⿊⾊8灰⾊1蓝⾊9淡蓝⾊2绿⾊A淡绿⾊3湖蓝⾊B浅绿⾊4红⾊C淡红⾊5紫⾊D淡紫⾊6黄⾊E淡黄⾊7⽩⾊F亮⽩⾊

示例如下:
在这里插入图片描述

通过和可以实现跳转执行命令。

 
 

在文件中搜索字符串,语法如下:

 
  • /v 显示所有未包含指定字符串的行
  • /c 仅显示包含字符串的行数
  • /n 显示行号
  • /i 搜索字符串时忽略大小写
  • /off[line] 不要跳过具有脱机属性集的文件
  • “字符串” 指定要搜索的字符串
  • [drive:][path]filename 指定要搜索的文件

批处理中用来调用外部程序的命令,语法如下:

 

参数:

  • 指定程序的起始目录
  • 最小化启动窗口
  • 最大化启动窗口
  • 等待启动的程序结束后才继续脚本
  • 在同一窗口中启动程序
  • 隐藏控制台执行程序
    说明:
  • 该命令将在新进程中运行外部程序,原批处理程序将继续执行
  • 执行运行外部程序则会等待外部程序完成后再继续执行后续指令

示例: 将会使用图形界面打开D盘。

CALL命令可以在批处理执⾏过程中调⽤另⼀个批处理,只有当被调用的批处理执⾏完后,才能继续执⾏原来的批处理,语法如下:

 
 

assoc 和 ftype 可实现文件关联,语法如下:

 
 

主要用于保存并返回初始目录,示例如下:

 
 

条件判断语句,语法如下:

 
 
 

在这个例子中, 设置控制台窗口的列数为80,行数为30。

用在任何命令前面,实现关闭当前行的回显.

 

:批处理本身所在的路径

DOS的标准输⼊输出通常是在标准设备键盘和显⽰器上进⾏的,利⽤重定向,可以⽅便地将输⼊输出改向磁盘⽂件或其它设备。其中:

  • ⼤于号 将命令发送到⽂件或设备,例如打印机>prn
  • 双⼤于号 将命令输出添加到⽂件结尾⽽不删除⽂件中已有的信息
  • ⼩于号 从⽂件⽽不是键盘上获取命令所需的输⼊
  • 符号将输出从⼀个默认I/O流(stdout,stdin,stderr)重新定向到另⼀个默认I/O流

和 有点类似,但他们的区别是 是传递并在⽂件的末尾追加,⽽ 是覆盖。

在命令行模式下设置的环境变量,属于临时环境变量,只针对当前的CMD命令窗口有效,并不影响其他窗口中的环境变量,更不会影响到永久性的环境变量,要设置永久的环境变量,需要通过图形操作修改。

CMD

 

PowerShell

 
 
 
 

如果需要执行指定的脚本文件,请使用 命令,示例如下:

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

① 搜索当前目录是否存在以指定字符串结尾的文件夹

 
 
 
 
 
 
 
 

https://www.jb51.net/article/250331.htm
http://www.taodudu.cc/news/show-3034558.html
https://www.w3cschool.cn/dosmlxxsc1/wvqyr9.html
https://www.runoob.com/linux/linux-shell-variable.html
https://www.hxstrive.com/subject/windows_bat.htm?id=36
https://cloud.tencent.com/developer/article/2118950
https://www.yiibai.com/batch_script/
https://zhuanlan.zhihu.com/p/415626343
http://t.csdn.cn/hJaPh
http://t.csdn.cn/3R7Be
http://t.csdn.cn/zFfr5
http://t.csdn.cn/JmcoH
http://t.csdn.cn/ui048

编程小号
上一篇 2025-02-27 08:30
下一篇 2025-03-31 11:30

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/48452.html