小石头
Excellence in any department can be attained only by the labor of a lifetime; it is not to be purchased at a lesser price.
posts - 91,comments - 22,trackbacks - 0
批处理文件简介

                                         

                                                    张小星

 

一.什么是批处理文件

        批处理文件( BATCHFILE ,简称 BAT 文件)是一种在 DOS 下最常用的可执行文件。它具有灵活的操纵性,可适应各种复杂的计算机操作(指在 DOS 下)。所谓的批处理,就是按规定的顺序自动执行若干个指定的 DOS 命令或程序。即是把原来一个一个执行的命令汇总起来,成批的执行。

 

二.如何编辑一个 BAT 文件

        编辑一个 BAT 文件是一件很简单的事,任何一个能编辑 ASCII 字符的程序都可以用来编辑或创建 BAT 文件。例如 DOS 下的 EDIT 。 COM 、 WPS 文字处理系统, WINDOWS 下的 NOTEPAD 等。最简单的方法是用 COPY CON [ 主文件名。 BAT] 来创建 BAT 文件,在创建完后按 CTRL+Z 键来结束。但这种方法的缺点是只能写,不能改。

        BAT 文件的编写规则也很简单,即一条命令单独占用一行,不能将两条命令写在同一行中。         如果没有转移语句, BAT 文件将顺序执行每一条语句。

 

三. BAT 常用命令详解

1 .   ECHO 和 @ 

     作用            显示或隐藏屏幕显示,在屏幕上显示文本信息。

     使用方法        ECHO  ON | OFF   使整个屏幕显示或不显示

                    @                  使一句语句不在屏幕上显示

     例     @echo off    (  使整个屏幕不显示,包括该语句本身 )

     例     echo  这句话将显示在屏幕上

2 .   REM

     作用            给命令加上注释,使一句语句失去作用

     使用方法        REM [ 注释语句 ]

     例              REM  DEL*.*    ( 不执行删除命令 )

3 .   PAUSE

     作用          暂停命令的执行,主要用于 BAT 的调试阶段。暂停时可按                                                                                      ctrl+break 或 ctrl+c 来停止 BAT 的执行。

     使用方法        PAUSE

     例              PAUSE  [ 文本信息 ]    (暂停并显示文本信息)

4 .   %0-%9 批处理参数

     作用            代替命令中的参数

     使用方法        < 命令名 >  [ 批处理参数 1] [ 批处理参数 2] ···

     例              有批处理文件名为 GO 。 BAT ,清单如下

                    @echo off

                    echo this is a demo bat

                    cd  %1

                   

                    当键入文件名及参数 c:\ 时     go c:\

                    则效果等同于 cd c:\

5.    SHIFT

     作用            更新批处理参数所代替的命令参数,每运行一次,命令参数前移一位。

     使用方法        shift

     例               有批处理文件名为 DEMO 。 BAT ,清单如下

                    @echo off

                    if “%1”=”” goto end   ( 有关 if 语句,参见下文 )

                    rem 判断 %1 所代表的是否为空,为空则转到 end 语句

                    dir %1

                    Shift

                    : end

                   

                    当键入    demo  a: b: c: d: 时,效果为列 A 、 B 、 C 、 D 四个磁盘的目录

6 .   GOTO        

     作用            转到指定段。

     使用方法        goto   < 段名 >

     例              goto  start   ( 转到 start 段,其中 start 为段名,须加“:”以便和命令名相区别。 )

7.    IF

     作用            用于条件判断

     使用方法        1. IF[NOT] EXIST < 文件名 > < 命令 >

                    2. IF [NOT]  < 字符串 1 >=< 字符串 2>

                    3. IF ERRORLEVEL (N) < 命令 >

     作用            1. 如果 ( 不 ) 存在所选文件则执行所带命令

                    2. 如果字符串 1( 不 ) 等于字符串 2, 则执行所带命令

                    3. 如果命令执行后的错误等级码是(不是) N , 那么执行所带命令。

     例              1.if exist demo.bat echo this is a demo ( 如果 demo.bat 文件存在 , 显示 this is a demo)

                    2.if “x”=”1” echo the answer is right  ( 如果 x=1, 显示 the answer is right)

                    3.if errorlevel 2 echo good luck   ( 如果错误码为 2, 显示 good luck)

8.   FOR

作用             用一个临时参数代替括号中的对象

使用方法         for <%% 参数名 > in <( 对象 1 、对象 2 ··· )> do < 命令 >

例               for %% d in (a: b: ) do format %%d  ( 效果等同于格式化 A 盘和 B 盘 )

9.   SET           

作用              设置环境变量

使用方法         set < 变量名 >=< 对象 >

例               set ff=45  ( 使变量 ff 的值为 45)

10 . CHOICE

作用             为进行交互式选择提供手段。

使用方法         choice [/c: 字母 ] [/n ] [/s ] [/t: 字母,秒数 ] [ 说明信息 ]

                [/c:/ 字母 ] :指定那些字母用于选择操作,每个字母之间用逗号隔开。缺省为 y,n

                [/n] :不显示供选择的字母

                [/s:] :对输入的字母区分大小写

                [/t: 字母,秒数 ] :限定选择所用的秒数( 0-99 )过时则以指定的字母作为选择

                [ 说明信息 ] :显示其后的信息用于说明

                choice 和 if 的第三种用法可配合使用,具体方法是,当你选第一个字母时, errorlevel 为 1 ,第二个为二···

例               choice [/c: a,b,c]

                if errorlevel 3 echo your choice is c

                if errorlevel 2 echo your choice is b

                if errorlevel 1 echo your choice is a

 

四.结语

         要编好 BAT 文件,关键在于多实践。要将 BAT 应用于日常工作中。在不少软件中都有 BAT ,有兴趣可以拿他们看一看,以提高自己的编程技巧。只要认真的学,你不久就会发现 BAT 为你的计算机管理带来的巨大方便。

posted on 2007-02-15 15:02 小石头 阅读(295) 评论(0)  编辑  收藏 所属分类: 批处理学习