在MS-DOS中,批处理文件,即.bat文件是可执行文件,由一系列命令构成,其中可以包含对其他程序的调用。
这个文件的每一行都是一条DOS命令(大部分时候就好像我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。
可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。第三,每个编写好的批处理文件都相当于一个DOS的外部命令 你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。
现在看看常用的一些命令:
echo on表示显示此命令后的字符
echo off 表示在此语句后所有运行的命令都不显示命令行本身 【关闭回显】
@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。
pause 运行此句会暂停批处理的执行并在屏幕上显示“Press any key to continue...”或“请按任意键继续。。。”的提示
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。
如公司中在将手机的C源代码编译成机器码的过程中,先打开dos界面,定位到mak文件夹后输入B K100后回车,系统会自身调用B。bat文件,K100为参数。B。bat文件内容如下:
set build_begn=%time% 表示开始build时的时间,将其显示在dos界面上。
rem USAGE: Build.bat MDV_HW_VER SW_MAJ_VER SW_MIN_VER SW_UPDATE PROJECT_CFG 表示一会儿调用Build。bat时所需要的三个参数。
IF [%1]==[K100] GOTO K100 ,%1表示第一个参数,第一个参数如果为K100,跳转执行K100.
:K100
@echo on
CALL build.bat 2 1 001 0 0
GOTO END
call 执行build.bat 2 1 001 0 0,后边四个参数,分别代表不同的硬件、软件、版本、语言和项目。执行完了之后将会GOTO到END。
set build_begn=%time% 表示开始build时的时间,将其显示在dos界面上。
rem USAGE: Build.bat MDV_HW_VER SW_MAJ_VER SW_MIN_VER SW_UPDATE表示调用所需要的参数。
然后调用omake语句,执行mk_DD2_Daily.mak文件,传进参数。。。等等。最后返回end。
执行mk_DD2_Daily.mak文件内的内容以后再来研究解释。