Board logo

标题: 精通批处理第一辑 [打印本页]

作者: lygwdyanzi    时间: 2007-11-4 13:16     标题: 精通批处理第一辑

批处理的常见命令

REM
ECHO
GOTO
CALL
PAUSE
IF

还有(FOR,SETLOCAL,SHIFT)基于这几个命令比较难,不适合放在一日一动画里


批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
这些命令统称批处理命令。

介绍命令

1、REM

REM是个注释命令,一般用来给程序加上注解,该命令后的内容在程序执行时,将不会被显示和执行。

例:REM 这个命令就是注释

这一句将不会被执行

2、ECHO

ECHO是一个回显命令,主要参数有OFF和ON。一般用ECHO MESSAGE来显示一个特定的消息。

例:
Echo off
Rem 以上代表关闭回显(就是不显示所执行的命令)
Echo 这个就是消息(message)
Rem 以上代表显示“这就是消息(message)”这列字符

咱们来看看执行结果:


3、GOTO

GOTO会点编程的朋友就会知道这是跳转的意思。
在批处理中允许以“:XXX”来构建一个标号,然后用GOTO XXX直接来执行标号后的命令。

例:

:lable
REM 上面就是名为LABEL的标号
DIR C:\
DIR D:\
GOTO lable
REM 以上程序跳转标号LABEL处继续执行

咱们来看看结果:

4、CALL

CALL命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后,再继续执行原来的批处理

例:

创建一个2.BAT,内容如下
ECHO 这就是2的内容

创建一个1.BAT,内容如下
ECHO 这是1的内容
CALL 2.BAT
ECHO 1和2的内容全部显示完成。

执行1.BAT,来看看结果:

5、PAUSE

PAUSE,玩游戏的人都知道,暂停的意思
在这里就是停止系统命令的执行并显示下面的内容。

例:

PAUSE

6、IF

IF 条件判断语句,语法格式如下:

IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command

解释下:
[NOT]:将返回结果取反值,就是“如果没有”的意思

ERRORLEVEL:
是命令执行完成后返回的退出值

Number:
退出值的数字取值范围0~255,判断时值的排列顺序应该由大到小。返回的值大于等于指定的值时,条件成立

string1==string2:
string1和string2都为字符的数据,英文内字符的大小写将看作不同,这个条件中的等于号必须是两个(绝对相等的意思)
条件相等后即执行后面的command

EXIST filename:
为文件或目录存在的意思

IF ERRORLEVEL这个句子必须放在某一个命令的后面,执行命令后由IF ERRORLEVEL 来判断命令的返回值。

例:

(1)
IF [NOT] ERRORLEVEL number command
检测命令执行完后的返回值做出判断

echo off
dir z:
rem 如果退出代码为1(不成功)就跳至标题1处执行
IF ERRORLEVEL 1 goto 1
REM 如果退出代码为0(成功)就跳至标题0处执行
IF ERRORLEVEL 0 goto 0
:0
echo 命令执行成功!
Rem 程序执行完毕跳至标题exit处退出
goto exit
:1
echo 命令执行失败!
Rem 程序执行完毕跳至标题exit处退出
goto exit
:exit
Rem 这里是程序的出口

(2)IF string1==string2 command
检测当前变量的值做出判断

ECHO OFF
IF %1==2 goto no
Echo 变量相等!
goto exit
:no
echo 变量不相等
goto exit
:exit

看看效果,敲击这个命令1.bat 数字

(3)IF [NOT] EXIST filename command
发现特定的文件做出判断

echo off
IF not EXIST autoexec.bat goto 1
echo 文件存在成功!
goto exit
:1
echo 文件不存在失败!
goto exit
:exit

这个批处理大家可以放在C盘和D盘分别执行,看看效果
作者: 雁过秋凉    时间: 2008-3-13 13:46

看上去好像还是有点难度哦~~
作者: gyz4444    时间: 2008-5-6 16:27     标题: ~~

长得帅自然不觉得难啊
作者: jlinfeng    时间: 2008-5-6 21:08     标题: hehe

高手继续

新手开始上路了
作者: coffechicken    时间: 2008-5-7 09:27

好东西。顶起。复制,学习。
作者: MarkovChain    时间: 2008-12-3 02:26

学习知识~~~~~支持楼主




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2