欢迎来到天天文库
浏览记录
ID:38931421
大小:48.00 KB
页数:5页
时间:2019-06-21
《炉体地震力分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、灵活使用批处理文件的参数(1)大多数命令行实用程序需要额外的信息,如文件名(例如,当使用COPY或DEL命令时)或文件路径(例如当使用CD或MD命令)。这些附加的信息称为参数--提供了指定命令工作方式的灵活性。还可以向批处理文件添加相同级别的灵活性。要理解其工作原理,首先查看以下示例:@ECHOOFFECHO.ECHOThefirstparameteris%1ECHOThesecondparameteris%2ECHOThethirdparameteris%3可以看到,该批处理文件只是通过ECHO命令在屏幕上回显4行内容(第一行只是空白行)。但是,可以发现每个ECHO命令都
2、是以百分号符号(%)和数字结束。输入并保存该批处理文件为PARAMETERS.BAT。然后,为了查看这些不寻常符号的含义,可以在WindowsVista的"命令提示符"中输入以下命令:parametersTinkersEversChance产生的输出如下:C:>parametersTinkersEversChanceThefirstparameterisTinkersThesecondparameterisEversThethirdparameterisChance在PARAMETERS.BAT中接下来的ECHO命令将产生第一行的输出(在空白行后):ECHOThefirs
3、tparameteris%1当WindowsVista在批处理文件中遇到%1符号时,它会检查原始命令并查找批处理文件名后的第一个词,然后用这个词替换%1。在本例中,parameters后的第一个词是Tinkers,所以WindowsVista将使用它替换%1(这就是批处理文件编程人员称%1为可替换参数(replaceableparameter)的原因)。仅当完成该操作后才能在屏幕上执行ECHO命令行。可替换参数%2的情况也类似,只是在这种情况下,WindowsVista会查找批处理文件名后的第二个词(如本例中的Evers)。注意:如果批处理文件命令的参数超过批处理文件查找的
4、参数,则它会忽略多余的参数。例如,向parameters命令行添加第四个参数将不会对文件操作有任何影响。注意,批处理文件中的可替换参数不能多于9个(从%1到%9),然而存在第10个可替换参数(%0),它用于保存批处理文件本身的名称。提示:如果可替换参数是含有一个或多个空格的字符串,则应该使用引号包含该参数。现在介绍一个现实生活中的例子,考虑下面这个实用且灵活的批处理文件NEWFOLDER.BAT:@ECHOOFFCLSMDbatchCDbatch该批处理文件会在当前文件夹下创建名为batch的新文件夹,然后进入该文件夹中。您可能会惊讶地发现您经常需要这样操作,所以尝试自
5、动执行整个过程很有意义。遗憾的是,这并非最好的运行方式。每次要创建和进入文件夹时都需要设置批处理文件,但是您不应该浪费时间在该操作上,而是可以使用替换参数向NEWFOLDER.BAT添加灵活性:@ECHOOFFCLSMD%1CD%1现在,如果想创建和进入新的批处理文件夹,可以输入以下命令:newfolderbatchVista会将NEWFOLDER.BAT中的每个%1替换成batch(newfolder后面的第一个词),因此批处理文件仍像以前一样运行。当然这里的区别在于,还可以将其用于其他文件夹。例如,为了创建名为scripts的新文件夹并进入该文件夹,可以使用如下命令
6、:newfolderscripts注意:如果在"运行"对话框中运行NEWFOLDER.BAT批处理文件,Vista会在保存批处理文件的文件夹中创建新文件夹。改进命令行实用程序因为批处理文件的可替换参数可以像命令行实用程序中的参数那样使用,所以不难创建批处理文件用于模仿甚至改进标准的"命令提示符"。1.使DEL命令更安全当使用通配符删除多个文件时,大概会有99.9%的概率会发生命令行删除意外。在错误的位置使用问号标记或在错误的文件夹中使用*.*将导致灾难。注意:符号*和?都是通配符。可以使用?匹配单个字符,也可以使用*匹配任意长度的字符。如果能看到将要删除的文件列表,然后在
7、出现问题时也有取消删除的选项,则会很有帮助。当然,最简单的方式是通过DEL所使用的相同文件说明来运行DIR命令。但是每次输入两个命令并确保?s和*s是否处于正确的位置是件很麻烦的事情。这里可以使用批处理文件,如下(SAFEDEL.BAT)所示:@ECHOOFFCLSECHO%0%1ECHO.ECHOHereisalistofthefilesthatwillbedeleted:REMDisplayawideDIRlistinalphabeticalorderDIR%1/ON/WECHO.ECHOTocancelthe
此文档下载收益归作者所有