写的不错批处理教程一
作者 佚名
来源 批处理
浏览
发布时间 2013-07-09
要输入一个参数,而不用改程序本身,整个程序的通用性就大大提高了. 这是对于一个简单的ping命令,你或许觉得用参数不值得,还是直接改不就好了啊.但如果程序有很多条,你一下找不到在哪改怎么办啊?所以,只要运行下,输入参数,结果自己就会出来,不用再象你一样,考虑怎么编写批处理文件.人家只要知道是输入什么东西能让批处理程序运行,而编写的人则想的是如何让不懂程序的人能运行程序. if命令 举个例子:如果a喜欢b,那么a就要娶b.这句话翻译成计算机语言就成了 if a喜欢b a就要娶b. 当然拉,计算机不可能理解a喜欢b,a就要娶b这两句话,这里只是举个例子让你方便理解. if语句一共有3种模式,如下: IF[NOT]string1==string2command IF[NOT]EXISTfilenamecommand IF[NOT]ERRORLEVELnumbercommand NOT指定只有条件为false的情况下,WindowsXP才应该执行该命令。 ERRORLEVELnumber如果最后运行的程序返回一个等于或大于指定数字的退出编码,指定条件为true。 string1==string2如果指定的文字字符串匹配,指定条件为true。 EXISTfilename如果指定的文件名存在,指定条件为true。 command如果符合条件,指定要执行的命令。如果指定的条件为FALSE,命令后可跟一个执行ELSE关键字后的命令的ELSE命令。 我们先讲解第一种: IF[NOT]string1==string2command 自然语句意思:如果string1==string2,那么执行command 下面再举个能实际应用的if语句. 自然语句:如果输入的参数为3,那么显示"a=3" 计算机语句: @echooffif"%1"=="3"echo"a=3" 或者写成 @echooffif%1==3echo"a=3" 注意:当要测试的时候,因在cmd底下,输入1.bat3.因为这里用了是传递参数,具体看文章前部分"批处理文件参数". 第二种: IF[NOT]EXISTfilenamecommand 这条命令用语检测文件是否存在.如果存在,执行command.如果不存在,则什么也不显示. 如:我们想检查e盘根目录下是否有一个叫2.txt的文件.如果存在,则显示exist.如果不存在,则什么也不显示. 批处理命令如下: @echooffifexiste:\2.txtecho"exist2.txt" 第三种: IF[NOT]ERRORLEVELnumbercommand 这个我引用点资料,感觉别人写得更详细,引用部分为粉色字部分: iferrorlevel<数字>待执行的命令 很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过iferrorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。 如iferrorlevel2gotox2 ====注====返回值从大到小的顺序排列不是必须的,而只是执行命令为goto时的习惯用法,当使用set作为执行命令时,通常会从小到大顺序排列,比如需将返回码置入环境变量,就需使用以下的顺序形式: iferrorlevel1setel=1iferrorlevel2setel=2iferrorlevel3setel=3iferrorlevel4setel=4iferrorlevel5setel=5 当然,也可以使用以下循环来替代,原理是一致的:for%%ein(12345678...)doiferrorlevel%%esetel=%%e //此处为一个for循环,后面会继续介绍到的,看不懂可以先跳过去 iferrorlevel比较返回码的判断条件并非等于,而是大于等于.由于goto的跳转特性,由小到大排序会导致在较小的返回码处就跳出;而由于set命令的"重复"赋值特性,由大到小排序会导致较小的返回码"覆盖"较大的返回码. 另外,虽然iferrorlevel=<数字>command也是有效的命令行,但也只是command.com解释命令行时将=作为命令行切分符而忽略掉罢了 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: DOS下FTP命令(FTP命令全集)下一篇: Msd、Undelete命令的使用方法
关于写的不错批处理教程一的所有评论