没有合适的资源?快使用搜索试试~ 我知道了~
详细描述bat批处理的原理与语法以及用法
资源详情
资源评论
资源推荐
扩展名是 bat(在 nt/2000/xp/2003 下也可以是 cmd)的文件就是批处理文件。
==== 注 ===================================
====
.bat 是 dos 下的批处理文件
.cmd 是 nt 内核命令行环境的另一种批处理文件
从 更广义的角度来看,unix 的 shell 脚本以及其它操作系统甚至应用程序中由
外壳进行解释执行的文本,都具有与批处理文件十分相似的作用
,而且同样是由 专用解释器以行为单位解释执行,这种文本形式更通用的称谓
是脚本语言。所以从某个程度分析,batch, unix shell, awk,
basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同
而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容
和扩展名与 dos 的批处理却又完全 不同。
===================================
首先批处理文件是一个文本文件,这个文件的每一行都是一条 DOS 命令(大部
分时候就好象我们在 DOS 提示符下执行的命令行一样),你可以使
用 DOS 下的 Edit 或者 Windows 的记事本(notepad)等任何文本文件编辑工
具创建和修改批处理文件。
==== 注 ===================
批 处理文件中完全可以使用非 dos 命令,甚至可以使用不具有可执行特性的普
通数据性文件,这缘于 windows 系统这个新型解释平台的涉入,使
得批处理的应 用越来越"边缘化"。所以我们讨论的批处理应该限定在 dos 环境
或者命令行环境中,否则很多观念和设定都需要做比较大的变动
。
========================
其 次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句
(goto)来控制命令运行的流程,在批处理中也可以使用循环语句
(for)来 循环执行一条命令。当然,批处理文件的编程能力与 C 语言等编程语句
比起来是十分有限的,也是十分不规范的。批处理的程序语句就
是一条条的 DOS 命令(包括 内部命令和外部命令),而批处理的能力主要取
决于你所使用的命令。
==== 注 ==================
批 处理文件(batch 'le)也可以称之为批处理程序(batch program),这一点
与编译型语言有所不同,就 c 语言来说,扩展名为 c 或者 cpp 的文件
可以称之为 c 语言文件或者 c 语言源代码,但只有编译连接后的 exe 文件才可
以称之为 c 语言程序。因为批处理文件本身既具有文本的可读性,又
具有程序的可执行性,这些称谓的界限是比较模糊的。
===========================
第 三,每个编写好的批处理文件都相当于一个 DOS 的外部命令,你可以把它
所在的目录放到你的 DOS 搜索路径(path)中来使得它可以在任意位置
运行。一个 良好的习惯是在硬盘上建立一个 bat 或者 batch 目录(例如
C:BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在
path 中设置 上 c:batch,你就可以在任意位置运行所有你编写的批处理程序。
==== 注 =====
纯以 dos 系统而言,可执 行程序大约可以细分为五类,依照执行优先级由高到
低排列分别是:DOSKEY 宏命令(预先驻留内存),COMMAND.COM 中
的内部命令(根据内存的环 境随时进驻内存),以 com 为扩展名的可执行程
序(由 command.com 直接载入内存),以 exe 位扩展名的可执行程序
(由 command.com 重定位后载入内存),以 bat 位扩展名的批处理程序
(由 command.com 解释分析,根据其内容按优先级顺序调用第
2,3,4,5
种可执行程序,分析一行,执行一行,文件本身不载入内存)
============ 第 四,在 DOS 和 Win9x/Me 系统下,C:盘根目录下
的 AUTOEXEC.BAT 批处理文件是自动运行批处理文件,每次系统启动时会自
动运行
该文件,你 可以将系统每次启动时都要运行的命令放入该文件中,例如设置搜
索路径,调入鼠标驱动和磁盘缓存,设置系统环境变量等。下面
是一个运行于 Windows 98 下的 autoexec.bat 的示例:
@ECHO OFF
PATH
C:WINDOWS;C:WINDOWSCOMMAND;C:UCDOS;C:DOSTools;<br>
C:SYSTOOLS;C:WINTOOLS;C:BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /insert
LH CTMOUSE.EXE
SET TEMP=D:TEMP
SET TMP=D:TEMP
==== 注 =====
AUTOEXEC.BAT 为 DOS 系统的自动运行批处理文件,由 COMMAND.COM
启动时解释执行;
而在 Win9x 环境中,不仅增加支持了 DOSSTART.BAT, WINSTART.BAT 等
许多其它自动运行的批处理文件,对 AUTOEXEC.BAT 也增加了 .DOS .W40
.BAK .OLD .PWS 等许多变体以适应复杂的环境和多变的需求。
==== willsort 编注 =============
以 下关于命令的分类,有很多值得推敲的地方。常用命令中的@本不是命令,
而 dir、copy 等也很常用的命令却没有列入, 而特殊命令中所有命
令对我来说都是常用命令。建议将批处理所引用的命令分为内部命令、外部命
令、第三方程序三类。而内部命令和外部命令中别有一类是专用
于 或常用于批处理中的命令可称之为"批处理命令"。
以下摘录 MS-DOS 6.22 帮助文档中关于"批处理命令"的文字,当然,其中有
些概念和定义已经有些落后了。
批处理命令
批处理文件或批处理程序是一个包含若干 MS-DOS 命令的正文文件,扩展名为.
BAT。当在命令提示符下敲入批处理程序的名称时,MS-DOS 成组执
行此批处理程序中的命令。
任何在命令提示符下可使用的命令都可用在批处理程序中。此外,下面 MS-
DOS 命令是专门在批处理程序中使用的。
==========
常用命令
echo、@、call、pause、rem(小技巧:用::代替 rem)是批处理文件最常用
的几个命令,我们就从他们开始学起。
==== 注 ===========
首先, @ 不是一个命令, 而是 DOS 批处理的一个特殊标记符, 仅用于屏蔽命令
行回显. 下面是 DOS 命令行或批处理中可能会见到的一些特殊标记
符:
CR(0D) 命令行结束符
Escape(1B) ANSI 转义字符引导符
剩余19页未读,继续阅读
alanmarshermes
- 粉丝: 2
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0