批处理
🏝️Example
🏝️无限循环,定时,固定时间间隔
1 | @echo off |
🏝️搜索目录
1 | @echo off |
🏝️for
reference
1 | @echo off |
🏝️If 命令 有三种格式:
🏝️1. if “参数” == “字符串” 待执行的命令
参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号)如
1 | if "%1"=="a" format a: |
🏝️2. if exist 文件名 待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句 如
1 | if exist config.sys edit config.sys |
🏝️3. if errorlevel / if not errorlevel 数字 待执行的命令
如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。如
1 | if errorlevel 2 goto x2 |
DOS 程序运行时都会返回一个数字给 DOS,称为错误码 errorlevel 或称返回码,常见的返回码为 0、1。
🏝️注释方式
1、:: 注释内容(第一个冒号后也可以跟任何一个非字母数字的字符)
2、rem 注释内容(不能出现重定向符号和管道符号)
3、echo 注释内容(不能出现重定向符号和管道符号)〉nul
4、if not exist nul 注释内容(不能出现重定向符号和管道符号)
5、:注释内容(注释文本不能与已有标签重名)
6、%注释内容%(可以用作行间注释,不能出现重定向符号和管道符号)
7、goto 标签 注释内容(可以用作说明 goto 的条件和执行内容)
8、:标签 注释内容(可以用作标签下方段的执行内容)
@echo off 表示执行了这条命令后关闭所有命令(包括本身这条命令)的回显。而 echo off 命令则表示关闭其他所有命令(不包括本身这条命令)的回显,
@的作用就是关闭紧跟其后的一条命令的回显,
🏝️判断语句
🏝️1. 判断字符串相等。
示例如下:新建一个文本文件,命名为 ifstring,修改文件类型为 bat,:
1 | @echo off |
注意:if 判断字符串相等时候,后面用的是“==”,而不是“=”。
🏝️2. 判断数值相等。
示例如下:新建一个文本文件,命名为 ifnumber,修改文件类型为 bat,:
1 | @echo off |
注意:比较运算符分为以下几种:
EQU - 等于 NEQ - 不等于 LSS - 小于 LEQ - 小于或等于 GTR - 大于 GEQ - 大于或等于
🏝️3. 结合 errorlevel 使用
示例如下:新建一个文本文件,命名为 iferrorlevel,修改文件类型为 bat,:
1 | @ECHO off |
注意:环境变量 errorlevel 的初始值为 0,当一些命令执行不成功,就会返回一个数值,如:1 ,2 等
🏝️4. 判断变量定义与否。
示例如下:新建一个文本文件,命名为 ifdefined,修改文件类型为 bat,:
1 | @echo off |
Here is a footnote reference,[1] and another.[2]