所有可以在dos控制台中使用的命令都可以在bat文件中添加执行。
直接创建.bat文件,然后用文本编辑器打开即可。
以下示例都是一个xx.bat 文件演示。
echo aa 在控制台上回显“aa”
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。
创建名为“xx.bat”的文件,文件内容为:
@echo off
type %1
del %2
运行 xx a.txt b.txt 显示a.txt的内容,删除b.txt (type :显示文本文件内容 del :删除文件)
if [not] "参数" == "字符串" 待执行的命令
if "%1"=="a" del a.txt
运行 xx a 删除此目录下的a.txt文件
if [not] exist [路径\]文件名 待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句。
goto 批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配合使用,根据不同的条件来执行不同的命令组。
goto aaa
:sss
echo sss
:aaa
echo aaa
运行 xx 直接显示aaa,不显示sss,执行了goto后直接执行:aaa下方的命令
choice 使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的errorlevel,然后于if errorlevel配合,根据用户的选择运行不同的命令。 查看choice用法,请在dos控制台下输入choice /? 查看。
if errorlevel <数字> 待执行的命令
很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。
@echo off
choice /C abc /M "abc"
if errorlevel 1 goto a
if errorlevel 2 goto b
if errorlevel 3 goto c
:a
echo a
goto d
:b
echo b
goto d
:c
echo c
goto d
:d
echo Bye
运行 xx 显示内容:abc [A,B,C]? 输入a后执行:a后的命令,输入b后执行:b后的命令,输入c后执行:c后的命令。记住最好不要在if errorlevel 3 goto c 与 :a 之间添加一个空白行,不然在选择a的时候会出错。
for 循环命令,只要条件符合,它将多次执行同一命令。