快速业务通道

dos之bat批处理文件语法介绍

作者 佚名 来源 批处理 浏览 发布时间 2013-07-09
ps             运行wps  

批处理文件的参数

批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:
@echooff
format%1

如果执行C:\>fa:
那么在执行f.bat时,%1就表示a:,这样format%1就相当于formata:,于是上面的命令运行时实际执行的是formata:

例3:C:根目录下一批处理文件名为t.bat,内容为:
@echooff
type%1
type%2

那么运行C:\>ta.txtb.txt
%1:表示a.txt
%2:表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容。


特殊命令

ifgotochoicefor是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。

一、if是条件语句,用来判断是否符合规定的条件,从而决定执行不同的命令。有三种格式:

1、if[not]"参数"=="字符串"待执行的命令

参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。

例:if"%1"=="a"formata:

2、if[not]exist[路径\]文件名待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句。

如:ifexistc:\config.systypec:\config.sys
表示如果存在c:\config.sys文件,则显示它的内容。

3、iferrorlevel<数字>待执行的命令

很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过iferrorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。

如iferrorlevel2gotox2

二、goto批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配合使用,根据不同的条件来执行不同的命令组。

如:

gotoend

:end
echothisistheend

标号用“:字符串”来定义,标号所在行不被执行。

三、choice使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的errorlevel,然后于iferrorlevel配合,根据用户的选择运行不同的命令。

注意:choice命令为DOS或者Windows系统提供的外部命令,不同版本的choice命令语法会稍有不同,请用choice/?查看用法。

choice的命令语法(该语法为Windows2003中choice命令的语法,其它版本的choice的命令语法与此大同小异):

CHOICE[/Cchoices][/N][/CS][/Ttimeout/Dchoice][/Mtext]

描述:
该工具允许用户从选择列表选择一个项目并返回所选项目的索引。

参数列表:
/Cchoices指定要创建的选项列表。默认列表是"YN"。

/N在提示符中隐藏选项列表。提示前面的消息得到显示,
选项依旧处于启用状态。

/CS允许选择分大小写的选项。在默认情况下,这个工具
是不分大小写的。

/Ttimeout做出默认选择之前,暂停的秒数。可接受的值是从0
到9999。如果指定了0,就不会有暂停,默认选项
会得到选择。

/Dchoice在nnnn秒之后指定默认选项。字符必须在用/C选
项指定的一组选择中;同时,必须用/T指定nnnn。

/Mtext指定提示之前要显示的消息。如果没有指定,工具只
显示提示。

/?显示帮助消息。

注意:
ERRORLEVEL环境变量被设置为从选择集选择的键索引。列出的第一个选
择返回1,第二个选择返回2,等等。如果用户按的键不是有效的选择,
该工具会发出警告响声。如果该工具检测到错误状态,它会返回255的
ERRORLEVEL值。如果用户按Ctrl+Break或Ctrl+C键,该工具会返回0
的ERRORLEVEL值。在一个批

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号