3 File(s) 310272 bytes free
连ECHO off 命令本身亦不显示。
FOR 内部命令、批处理文件命令1.功能: 可以让我们反覆地执行DOS的命令。
2.格式: 在批处理文件中:
FOR [%%c] in(set) DO [command][arguments]
在MS-DOS命令行中:
FOR [%c] in(set) DO [command][arguments]
3.说明: ①、[%%c]或[%c]参数:将顺序地得到(set)这个集合中的各个元素来作为它的值,当得到一个值之后,就执行COMMAND此一DOS命令。
②、(set)中可包含*、?、/等通配符,那么[%%c]参数就会被设置成磁盘中能够匹配引指定的第一个文件名称,同时亦可使用路径。
③、[command]参数:指定您希望执行在每一包含在(set)中文件命令。
④、[arguments]参数为:[command]参数指定选择项。
4.范例: ①、如果一批处理文件中含有下述命令:
FOR %%F IN (TEST1.DBF TEST2.DBF TEST3.DBF) DO DEL %%F
则执行时,将有下述的结果:
DEL TEST1.DBF
DEL TEST2.DBF
DEL TEST3.DBF
②、如果批处理文件中含有下述的命令:(在TEST.BAT内)
FOR %%F IN (%1 %2 %3 %4 %5) DO DEL %%F
则在执行时执行下列命令,将有与前项相同的结果:
A>TEST TEST1.DBF TEST2.DBF TEST3.DBF
③、如果欲在DOS下直接执行此命令,则%%c只要改为%c的形式即可。
GOTO 内部命令、批处理文件命令1.功能: 将DOS控制权转移到某标号(LABEL)中,继续往后面执行。在批处理文件中的一个标号是以一个冒号(:)开头,其后跟着一个标号名称(LANEL NAME)所组成。
2.格式:GOTO label
3.说明: ①、GOTO label会造成接着执行标号label那一行的命令。
②、如果label未被定义,则当前这一个批处理文件的动作就会停止,并显示label notfound 信息。
③、批处理文件中的标号名称是由前面8个字来定义的。
④、批处理文件的标号是永远不会显示出来的。所以未引用的标号可用来作为一些注解。
4.范例: TEST.BAT 文件,内容如下:
@ECHO OFF
GOTO SECOND
:FIRST
REM I AM FIRST
:SECOND
REM I AM SECOND
执行结果如下:
REM I AM SECOND
IF 内部命令、批处理文件命令1.功能: 使DOS可以有条件地执行命令。
2.格式:IF[not] errorlevel number command
IF[not] [string1]==[string2] command
IF[not] exist filename.ext command
3.说明: ①、[not]参数:是一个可选择使用的条目,使用时会将其后面条件的结果再求一个相反的结果。
②、errorlevel number:errorlevel 是DOS产生出来的一个退出码。如果退出码大于或等于number(指定一个十进制值),则此条件成立,系统即可执行后面指定的command。
注意:测试退出码时要由大到小来测试,因为退出码只要测到大于或等于指定的值时,该条件即成立。
③、[string1]==[string2]:string1及string2皆为字符的数据,英文字母的大小写将视为不同。当[string1]及[string2]内容完全相同时,则此条件成立,并执行后面指定的command。此条件中的等号(=)必须要有两个。
④、exist filename.ext:如果指定的文件存在时,则所得的结果为“真”,否则为“假”。若为真,则系统即执行后面指定的command。
⑤、IF命令为一个分支命令。condition是一个条件,command是根据条件成立时才去执行的命令。若不成立时则往下继续执行次一个批处理文件命令。
⑥、IF errorlevel 主要是用于配合自己的程序,并于执行完毕后设置一个错误代码(errorcode),以便与IF errorlevel命令一起使用。
4.范例:REM 范例: ①
@ECHO OFF MYPROG1
IF ERRORLEVEL 2 GOTO 2
IF ERRORLEVEL 1 GOTO 1
GOTO EXTI
:L1
ECHO DATA ERROR
GOTO EXIT
:L2
ECHO PROGRAM CANCEL
:EXIT
上例中MYPROG1为一程序,在执行时如果发生退出码时,则表示该程序未执行成功。
REM 范例:②
@ECHO OFF
IF "%1"=="" GOTO EXIT
IF %1==1 GOTO L1
IF %1==2 GOTO L2
GOTO EXIT
:L1
ECHO I AM L1
GOTO EXIT
:L2
ECHO I AM L2
:EXIT
本例中,""(空字符串)、1、2是指定要与%1参数比较诉字符串。
REM 范例:③
@ECHO OFF
IF NOT EXIST PE2.EXE GOTO EXIT
PE2
GOTO END
:EXIT
ECHO PE2.EXE NOT FOUND!
:END
本例中,先检查PE2.EXE文件是否存在,不存在时则显示一个找不到的信息后结束。如果找到时则执行该程序后结束。
PAUSE 内部命令、批处理文件命令1.功能: 暂时停止系统命令的执行并显示下列信息:
strike a eky when ready......
2.格式:PAUSE
3.说明: ①、PAUSE命令可以在DOS执行一个命令时暂停,使您有机会来更换盘片。按下任何一个键后,即可让DOS继续执行下一个命令。
②、执行PAUSE命令时,系统会暂停;如果您要终止执行此批处理文件,则您可按下Ctrl+Break二键,接头按下Y,即可终止执行,但如果于此时按下N,则系统将继续执行其它命令。
4.范例: PAUSE1.BAT 文件,内容如下:
@ECHO OFF
@ECHO I am first
PAUSE
@ECHO ON
@ECHO I am second
@ECHO Please put a new diskette into drive A
PAUSE
则其执行结果如下所示:
A:\>PAUSE1
I am first
strike any key when ready...
I am second
Please put a new diskette into drive A
strike any key when ready...
REM 批处理文件命令、配置文件命令1.功能: 可以在配置文件(CONFIG.SYS)或批处理文件(.BAT)中加上注解说明。
2.格式:REM [comment]
3.说明: ①、[comment]参数:表示注解行,不会被当作命令执行。
②、您可在配置文件或批处理文件中将命令的功能注解加注在其中,以供日后引用。
③、CONFIG.SYS文件中的REM与在批处理文件中REM,皆可为注解的命令行。但是在批处理文件中,REM会被显示出来,而在CONFIG.SYS的REM命令行在起动DOS时并不会被显示出来。
4.范例:REM this is a sample CONFIG.SYS FOR DBASE 3
FILES=25
BUFFERS=20
SHIFT 内部命令、批处理文件命令1.功能: 使得DOS命令行上可以使用超过10个(%0到%9)以上的可替代参数。
2.格式SHIFT
3.说明 1.可替代参数的编号是%0--%9,如果要在一个命令行使用超过10个可以被代换的参数,则您可使用SHIFT命令来突破此限制。
2.每当执行SHIFT一次,所有命令行上的所有参数将向左移动一位。 %1的内容将为%2的内容所取代...,%9内容则由新的参数递补。
3.%0表示批处理文件本身的名称,永远不变,所以每次执行时您可以加上 9个参数在批处理文件名后。若要增加一个参数,则您将需要使用这个SHIFT命令来移位,才可取得第十个参数。
4.范例 1.SHIFT.BAT文件,内容如下:
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
SHIFT
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
SHIFT
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
2.执行结果如下:
A:\>SHIFT 1 1 2 3 4 5 6 7 8 9 10 11(先后跟随11个参数)
1 2 3 4 5 6 7 8 9 (取最前面9个参数)
A:\>SHIFT (移位)
2 3 4 5 6 7 8 9 10 (取另外9个参数)
连ECHO off 命令本身亦不显示。
FOR 内部命令、批处理文件命令1.功能: 可以让我们反覆地执行DOS的命令。
2.格式: 在批处理文件中:
FOR [%%c] in(set) DO [command][arguments]
在MS-DOS命令行中:
FOR [%c] in(set) DO [command][arguments]
3.说明: ①、[%%c]或[%c]参数:将顺序地得到(set)这个集合中的各个元素来作为它的值,当得到一个值之后,就执行COMMAND此一DOS命令。
②、(set)中可包含*、?、/等通配符,那么[%%c]参数就会被设置成磁盘中能够匹配引指定的第一个文件名称,同时亦可使用路径。
③、[command]参数:指定您希望执行在每一包含在(set)中文件命令。
④、[arguments]参数为:[command]参数指定选择项。
4.范例: ①、如果一批处理文件中含有下述命令:
FOR %%F IN (TEST1.DBF TEST2.DBF TEST3.DBF) DO DEL %%F
则执行时,将有下述的结果:
DEL TEST1.DBF
DEL TEST2.DBF
DEL TEST3.DBF
②、如果批处理文件中含有下述的命令:(在TEST.BAT内)
FOR %%F IN (%1 %2 %3 %4 %5) DO DEL %%F
则在执行时执行下列命令,将有与前项相同的结果:
A>TEST TEST1.DBF TEST2.DBF TEST3.DBF
③、如果欲在DOS下直接执行此命令,则%%c只要改为%c的形式即可。
GOTO 内部命令、批处理文件命令1.功能: 将DOS控制权转移到某标号(LABEL)中,继续往后面执行。在批处理文件中的一个标号是以一个冒号(:)开头,其后跟着一个标号名称(LANEL NAME)所组成。
2.格式:GOTO label
3.说明: ①、GOTO label会造成接着执行标号label那一行的命令。
②、如果label未被定义,则当前这一个批处理文件的动作就会停止,并显示label notfound 信息。
③、批处理文件中的标号名称是由前面8个字来定义的。
④、批处理文件的标号是永远不会显示出来的。所以未引用的标号可用来作为一些注解。
4.范例: TEST.BAT 文件,内容如下:
@ECHO OFF
GOTO SECOND
:FIRST
REM I AM FIRST
:SECOND
REM I AM SECOND
执行结果如下:
REM I AM SECOND
IF 内部命令、批处理文件命令1.功能: 使DOS可以有条件地执行命令。
2.格式:IF[not] errorlevel number command
IF[not] [string1]==[string2] command
IF[not] exist filename.ext command
3.说明: ①、[not]参数:是一个可选择使用的条目,使用时会将其后面条件的结果再求一个相反的结果。
②、errorlevel number:errorlevel 是DOS产生出来的一个退出码。如果退出码大于或等于number(指定一个十进制值),则此条件成立,系统即可执行后面指定的command。
注意:测试退出码时要由大到小来测试,因为退出码只要测到大于或等于指定的值时,该条件即成立。
③、[string1]==[string2]:string1及string2皆为字符的数据,英文字母的大小写将视为不同。当[string1]及[string2]内容完全相同时,则此条件成立,并执行后面指定的command。此条件中的等号(=)必须要有两个。
④、exist filename.ext:如果指定的文件存在时,则所得的结果为“真”,否则为“假”。若为真,则系统即执行后面指定的command。
⑤、IF命令为一个分支命令。condition是一个条件,command是根据条件成立时才去执行的命令。若不成立时则往下继续执行次一个批处理文件命令。
⑥、IF errorlevel 主要是用于配合自己的程序,并于执行完毕后设置一个错误代码(errorcode),以便与IF errorlevel命令一起使用。
4.范例:REM 范例: ①
@ECHO OFF MYPROG1
IF ERRORLEVEL 2 GOTO 2
IF ERRORLEVEL 1 GOTO 1
GOTO EXTI
:L1
ECHO DATA ERROR
GOTO EXIT
:L2
ECHO PROGRAM CANCEL
:EXIT
上例中MYPROG1为一程序,在执行时如果发生退出码时,则表示该程序未执行成功。
REM 范例:②
@ECHO OFF
IF "%1"=="" GOTO EXIT
IF %1==1 GOTO L1
IF %1==2 GOTO L2
GOTO EXIT
:L1
ECHO I AM L1
GOTO EXIT
:L2
ECHO I AM L2
:EXIT
本例中,""(空字符串)、1、2是指定要与%1参数比较诉字符串。
REM 范例:③
@ECHO OFF
IF NOT EXIST PE2.EXE GOTO EXIT
PE2
GOTO END
:EXIT
ECHO PE2.EXE NOT FOUND!
:END
本例中,先检查PE2.EXE文件是否存在,不存在时则显示一个找不到的信息后结束。如果找到时则执行该程序后结束。
PAUSE 内部命令、批处理文件命令1.功能: 暂时停止系统命令的执行并显示下列信息:
strike a eky when ready......
2.格式:PAUSE
3.说明: ①、PAUSE命令可以在DOS执行一个命令时暂停,使您有机会来更换盘片。按下任何一个键后,即可让DOS继续执行下一个命令。
②、执行PAUSE命令时,系统会暂停;如果您要终止执行此批处理文件,则您可按下Ctrl+Break二键,接头按下Y,即可终止执行,但如果于此时按下N,则系统将继续执行其它命令。
4.范例: PAUSE1.BAT 文件,内容如下:
@ECHO OFF
@ECHO I am first
PAUSE
@ECHO ON
@ECHO I am second
@ECHO Please put a new diskette into drive A
PAUSE
则其执行结果如下所示:
A:\>PAUSE1
I am first
strike any key when ready...
I am second
Please put a new diskette into drive A
strike any key when ready...
REM 批处理文件命令、配置文件命令1.功能: 可以在配置文件(CONFIG.SYS)或批处理文件(.BAT)中加上注解说明。
2.格式:REM [comment]
3.说明: ①、[comment]参数:表示注解行,不会被当作命令执行。
②、您可在配置文件或批处理文件中将命令的功能注解加注在其中,以供日后引用。
③、CONFIG.SYS文件中的REM与在批处理文件中REM,皆可为注解的命令行。但是在批处理文件中,REM会被显示出来,而在CONFIG.SYS的REM命令行在起动DOS时并不会被显示出来。
4.范例:REM this is a sample CONFIG.SYS FOR DBASE 3
FILES=25
BUFFERS=20
SHIFT 内部命令、批处理文件命令1.功能: 使得DOS命令行上可以使用超过10个(%0到%9)以上的可替代参数。
2.格式SHIFT
3.说明 1.可替代参数的编号是%0--%9,如果要在一个命令行使用超过10个可以被代换的参数,则您可使用SHIFT命令来突破此限制。
2.每当执行SHIFT一次,所有命令行上的所有参数将向左移动一位。 %1的内容将为%2的内容所取代...,%9内容则由新的参数递补。
3.%0表示批处理文件本身的名称,永远不变,所以每次执行时您可以加上 9个参数在批处理文件名后。若要增加一个参数,则您将需要使用这个SHIFT命令来移位,才可取得第十个参数。
4.范例 1.SHIFT.BAT文件,内容如下:
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
SHIFT
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
SHIFT
@ECHO %1 %2 %3 %4 %5 %6 %7 %8 %9
2.执行结果如下:
A:\>SHIFT 1 1 2 3 4 5 6 7 8 9 10 11(先后跟随11个参数)
1 2 3 4 5 6 7 8 9 (取最前面9个参数)
A:\>SHIFT (移位)
2 3 4 5 6 7 8 9 10 (取另外9个参数)