bat文件语法和技巧Word格式.docx

上传人:b****3 文档编号:14841704 上传时间:2022-10-25 格式:DOCX 页数:15 大小:69.91KB
下载 相关 举报
bat文件语法和技巧Word格式.docx_第1页
第1页 / 共15页
bat文件语法和技巧Word格式.docx_第2页
第2页 / 共15页
bat文件语法和技巧Word格式.docx_第3页
第3页 / 共15页
bat文件语法和技巧Word格式.docx_第4页
第4页 / 共15页
bat文件语法和技巧Word格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

bat文件语法和技巧Word格式.docx

《bat文件语法和技巧Word格式.docx》由会员分享,可在线阅读,更多相关《bat文件语法和技巧Word格式.docx(15页珍藏版)》请在冰豆网上搜索。

bat文件语法和技巧Word格式.docx

/WINDOWS/COMMAND;

/UCDOS;

/dosTools;

/SYSTOOLS;

/WINTOOLS;

/BATCH

LHSMARTDRV.EXE/X

LHdosKEY.COM/INSERT

LHCTMOUSE.EXE

SETTEMP=D:

/TEMP

SETTMP=D:

批处理的作用

简单的说,批处理的作用就是自动的连续执行多条命令。

这里先讲一个最简单的应用:

在启动wps软件时,每次都必须执行(>

前面内容表示dos提示符):

/>

cdwps

/WPS>

spdos

py

wbx

wps

如果每次用WPS之前都这样执行一遍,您是不是觉得很麻烦呢?

很多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]

描述:

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

参数列表:

 /C  choices   指定要创建的选项列表。

默认列表是"

YN"

 /N         在提示符中隐藏选项列表。

提示前面的消息得到显示,选项依旧处于启用状态。

 /CS        允许选择分大小写的选项。

在默认情况下,这个工具是不分大小写的。

 /T  timeout   做出默认选择之前,暂停的秒数。

可接受的值是从0到9999。

如果指定了0,就不会有暂停,默认选项

           会得到选择。

 /D  choice    在nnnn秒之后指定默认选项。

字符必须在用/C选项指定的一组选择中;

同时,必须用/T指定nnnn。

 /M  text     指定提示之前要显示的消息。

如果没有指定,工具只显示提示。

 /?

         显示帮助消息。

 注意:

 ERRORLEVEL环境变量被设置为从选择集选择的键索引。

列出的第一个选择返回1,第二个选择返回2,等等。

如果用户按的键不是有效的选择,该工具会发出警告响声。

如果该工具检测到错误状态,它会返回255的ERRORLEVEL值。

如果用户按Ctrl+Break或Ctrl+C键,该工具会返回0的ERRORLEVEL值。

在一个批程序中使用ERRORLEVEL参数时,将参数降序排列。

示例:

 CHOICE/?

 CHOICE/CYNC/M"

确认请按Y,否请按N,或者取消请按C。

"

 CHOICE/T10/Cync/CS/Dy

 CHOICE/Cab/M"

选项1请选择a,选项2请选择b。

 CHOICE/Cab/N/M"

 

如果我运行命令:

CHOICE/CYNC/M"

屏幕上会显示:

[Y,N,C]?

例:

test.bat的内容如下(注意,用iferrorlevel判断返回值时,要按返回值从高到低排列):

@echooff

choice/Cdme/M"

defrag,mem,end"

iferrorlevel3gotoend

iferrorlevel2gotomem

iferrotlevel1gotodefrag

defrag

c:

/dos/defrag

mem

echogoodbye

此批处理运行后,将显示"

defrag,mem,end[D,M,E]?

,用户可选择dme,然后if语句根据用户的选择作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以gotoend将程序跳到end标号处,然后程序将显示goodbye,批处理运行结束。

四、for循环命令,只要条件符合,它将多次执行同一命令。

语法:

对一组文件中的每一个文件执行某个特定命令。

FOR%%variableIN(set)DOcommand[command-parameters]

%%variable    指定一个单一字母可替换的参数。

(set)      指定一个或一组文件。

可以使用通配符。

command     指定对每个文件执行的命令。

command-parameters为特定命令指定参数或命令行开关。

例如一个批处理文件中有一行:

for%%cin(*.bat*.txt)dotype%%c

则该命令行会显示当前目录下所有以bat和txt为扩展名的文件的内容。

批处理示例

1.IF-EXIST

1)

首先用记事本在C:

/建立一个test1.bat批处理文件,文件内容如下:

IFEXIST/AUTOEXEC.BATTYPE/AUTOEXEC.BAT

IFNOTEXIST/AUTOEXEC.BATECHO/AUTOEXEC.BATdoesnotexist

然后运行它:

TEST1.BAT

如果C:

/存在AUTOEXEC.BAT文件,那么它的内容就会被显示出来,如果不存在,批处理就会提示你该文件不存在。

2)

接着再建立一个test2.bat文件,内容如下:

IFEXIST/%1TYPE/%1

IFNOTEXIST/%1ECHO/%1doesnotexist

执行:

TEST2AUTOEXEC.BAT

该命令运行结果同上。

说明:

(1)IFEXIST是用来测试文件是否存在的,格式为

IFEXIST[路径+文件名]命令

(2)test2.bat文件中的%1是参数,dos允许传递9个批参数信息给批处理文件,分别为%1~%9(%0表示test2命令本身),这有点象编程中的实参和形参的关系,%1是形参,AUTOEXEC.BAT是实参。

3)更进一步的,建立一个名为TEST3.BAT的文件,内容如下:

IF"

%1"

=="

A"

ECHOXIAO

%2"

B"

ECHOTIAN

%3"

C"

ECHOXIN

如果运行:

TEST3ABC

屏幕上会显示:

XIAO

TIAN

XIN

TEST3AB

屏幕上会显示

在这个命令执行过程中,dos会将一个空字符串指定给参数%3。

2、IF-ERRORLEVEL

建立TEST4.BAT,内容如下:

XCOPYC:

/AUTOEXEC.BATD:

IFERRORLEVEL1ECHO文件拷贝失败

IFERRORLEVEL0ECHO成功拷贝文件

然后执行文件:

TEST4

如果文件拷贝成功,屏幕就会显示"

成功拷贝文件"

,否则就会显示"

文件拷贝失败"

IFERRORLEVEL是用来测试它的上一个dos命令的返回值的,注意只是上一个命令的返回值,而且返回值必须依照从大到小次序顺序判断。

因此下面的批处理文件是错误的:

/

IFERRORLEVEL1ECHO未找到拷贝文件

IFERRORLEVEL2ECHO用户通过ctrl-c中止拷贝操作

IFERRORLEVEL3ECHO预置错误阻止文件拷贝操作

IFERRORL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1