Windows 批处理 (bat) 语法大全 
基础语法
- 批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条 DOS 命令。可以使用任何文本文件编辑工具创建和修改。
- 批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。
- 批处理的编程能力远不如 C 语言等编程语言,也十分不规范。
- 每个编写好的批处理文件都相当于一个 DOS 的外部命令,把它所在的目录放到 DOS 搜索路径 (path) 中,即可在任意位置运行。
- C:\AUTOEXEC.BAT 是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中。
- 大小写不敏感(命令符忽略大小写)
- 批处理的文件扩展名为 .bat 或 .cmd。
- 在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用 Cmd.exe 来运行该文件。
%~dp0[获取当前路径]
- %~dp0 “d”为 Drive 的缩写,即为驱动器、磁盘;“p”为 Path 缩写,即为路径、目录。
- cd %~dp0 :进入批处理所在目录
- cd %~dp0bin\ :进入批处理所在目录的 bin 目录
传递参数给批处理文件
%[1-9] 表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者 Tab)分隔的字符串。
变量可以从 %0 到 %9,%0 表示批处理命令本身,其它参数字符串用 %1 到 %9 顺序表示。
Sample:
call test2.bat "hello" "haha" (执行同目录下的“test2.bat”文件,并输入两个参数)
在“test2.bat”文件里写 :
echo %1 ( 打印: "hello")
echo %2 ( 打印: "haha")
echo %0 ( 打印: test2.bat)
echo %19 ( 打印: "hello"9)
Echo 命令
Sample: echo off
Sample: echo hello world(显示出“hello world”)
Sample: echo Windows Registry Editor Version 5.00 > c:\setupreg.reg (此前还没有 setupreg.reg 这个文件)
Sample: echo "SourcePath"="D:\\Win2003\\" >> c:\setupreg.reg (追加内容进 setupreg.reg 这个文件)
比较运算符
- EQU - 等于(一般使用“==”)
- NEQ - 不等于(没有 “!=”,改用“ if not 1==1 ”的写法)
- LSS - 小于
- LEQ - 小于或等于
- GTR - 大于
- GEQ - 大于或等于
参考资料快照
本文短链接:
If you have any questions or feedback, please reach out

.