专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »安全 » bat批处理文件:bat批处理文件的制作方法 »正文

bat批处理文件:bat批处理文件的制作方法

来源: 发布时间:星期三, 2008年12月17日 浏览:7次 评论:0
.bat批处理文件制作思路方法

bat是dos下批处理文件
.cmd是nt内核命令行环境种批处理文件
从更广义角度来看unixshell脚本以及其它操作系统甚至应用中由外壳进行解释执行文本都具有和批处理文件十分相似作用而且同样是由专用解释器以行为单位解释执行这种文本形式更通用称谓是脚本语言所以从某个程度分析batch, unix shell, awk, basic, perl 等脚本语言都是只不过应用范围和解释平台各有区别而已甚至有些应用仍然沿用批处理这称呼而其内容和扩展名和dos批处理却又完全区别
=

首先批处理文件是个文本文件这个文件行都是条DOS命令(大部分时候就好象我们在DOS提示符下执行命令行样)你可以使用DOS下Edit或者Windows记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件

=
批处理文件中完全可以使用非dos命令甚至可以使用不具有可执行特性普通数据性文件这缘于windows系统这个新型解释平台涉入使得批处理应用越来越"边缘化"所以我们讨论批处理应该限定在dos环境或者命令行环境中否则很多观念和设定都需要做比较大变动


其次批处理文件是种简单可以通过条件语句()和流程控制语句(goto)来控制命令运行流程在批处理中也可以使用循环语句(for)来循环执行条命令当然批处理文件编程能力和C语言等编程语句比起来是十分有限也是十分不规范标准批处理语句就是条条DOS命令(包括内部命令和外部命令)而批处理能力主要取决于你所使用命令


批处理文件(batch file)也可以称的为批处理(batch program)点和编译型语言有所区别就c语言来说扩展名为c或者cpp文件可以称的为c语言文件或者c语言源代码但只有编译连接后exe文件才可以称的为c语言批处理文件本身既具有文本可读性又具有可执行性这些称谓界限是比较模糊
=

第 3每个编写好批处理文件都相当于个DOS外部命令你可以把它所在目录放到你DOS搜索路径(path)中来使得它可以在任意位置运行个良好习惯是在硬盘上建立个bat或者batch目录(例如C:\BATCH)然后将所有你编写批处理文件放到该目录中这样只要在path中设置上c:\batch你就可以在任意位置运行所有你编写批处理

=
纯以dos系统而言可执行大约可以细分为 5类依照执行优先级由高到低排列分别是:DOSKEY宏命令(预先驻留内存)COMMAND.COM中内部命令(根据内存环境随时进驻内存)以com为扩展名可执行(由command.com 直接载入内存)以exe位扩展名可执行(由command.com 重定位后载入内存)以bat位扩展名批处理(由command.com 解释分析根据其内容按优先级顺序第2345种可执行分析执行文件本身不载入内存)


第 4在DOS和Win9x/Me系统下C:盘根目录下AUTOEXEC.BAT批处理文件是自动运行批处理文件每次系统启动时会自动运行该文件你可以将系统每次启动时都要运行命令放入该文件中例如设置搜索路径调入鼠标驱动和磁盘缓存Cache设置系统环境变量等下面是个运行于Windows 98下autoexec.bat举例:
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;

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等也很常用命令却没有列入, 而特殊命令中所有命令对我来说都是常用命令建议将批处理所引用命令分为内部命令、外部命令、第 3方 3类而内部命令和外部命令中别有类是专用于或常用于批处理中命令可称的为"批处理命令"

以下摘录MS-DOS 6.22 帮助文档中有关"批处理命令"文字当然其中有些概念和定义已经有些落后了

批处理命令

批处理文件或批处理个包含若干MS-DOS命令正文文件扩展名为.BAT当在命令提示符下敲入批处理名称时MS-DOS成组执行此批处理命令

任何在命令提示符下可使用命令都可用在批处理此外下面MS-DOS命令是专门在批处理中使用


常用命令

echo、@、call、pause、rem(小窍门技巧:用::代替rem)是批处理文件最常用几个命令我们就从他们开始学起

=
首先, @ 不是个命令, 而是DOS 批处理个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到些特殊标记符:
CR(0D) 命令行结束符
Escape(1B) ANSI转义引导符
Space(20) 常用参数界定符
Tab(09) ; = 不常用参数界定符
+ COPY命令文件连接符
* ? 文件通配符
"" 串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回显屏蔽符
/ 参数开关引导符
: 批处理标签引导符
% 批处理变量引导符

其次, :: 确实可以起到rem 注释作用, 而且更简洁有效; 但有两点需要注意:
, 除了 :: 的外, 任何以 :开头行, 在批处理中都被视作标号, 而直接忽略其后所有内容, 只是为了和正常标号相区别, 建议使用 goto 所无法识别标号, 即在 :后紧跟个非字母数字个特殊符号.
第 2, 和rem 区别是, ::后行在执行时不会回显, 无论是否用echo _disibledevent=''>暂停批处理稍

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: