已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DOS批处理编程原理 报告人 日期 目录 DOS概述DOS批处理的基本语法DOS批处理命令DOS批处理编程方法 DOS概述 DOS DiskOperatingSystem 是一种面向磁盘的操作系统软件 是人与机器的一座桥梁 是设在机器硬件里面的一套人机交互系统 有了DOS 我们就不必去深入了解机器的硬件结构 也不必去死记硬背那些枯燥的机器命令 DOS的组成 小知识 可执行的程序文件有 COM和 EXE两种 一般来讲 EXE文件为软件执行程序 而 COM文件则为命令程序 DOS批处理的基本语法 后缀是bat的文件就是批处理文件 是一种文本文件 简单的说 它的作用就是自动的连续执行多条命令 批处理文件的内容就是一条一条的命令 首先 批处理文件是一个文本文件 这个文件的每一行都是一条DOS命令 大部分时候就好象我们在DOS提示符下执行的命令行一样 你可以使用DOS下的Edit或者Windows的记事本 notepad 等任何文本文件编辑工具创建和修改批处理文件 DOS批处理的基本语法 其次 批处理文件是一种简单的程序 可以通过条件语句 if 和流程控制语句 goto 来控制命令运行的流程 在批处理中也可以使用循环语句 for 来循环执行一条命令 批处理文件的编程能力与C语言等编程语句比起来是十分有限的 也是十分不规范的 批处理的程序语句就是一条条的DOS命令 包括内部命令和外部命令 而批处理的能力主要取决于你所使用的命令 DOS批处理的基本语法 第三 每个编写好的批处理文件都相当于一个DOS的外部命令 你可以把它所在的目录放到你的DOS搜索路径 path 中来使得它可以在任意位置运行 纯以dos系统而言 可执行程序大约可以细分为五类 依照执行优先级由高到低排列分别是 DOSKEY宏命令 预先驻留内存 COMMAND COM中的内部命令 根据内存的环境随时进驻内存 以com为扩展名的可执行程序 由直接载入内存 以exe位扩展名的可执行程序 由重定位后载入内存 以bat位扩展名的批处理程序 由解释分析 根据其内容按优先级顺序调用第2 3 4 5种可执行程序 分析一行 执行一行 文件本身不载入内存 DOS批处理的基本语法 第四 在DOS下 C 盘根目录下的AUTOEXEC BAT批处理文件是自动运行批处理文件 每次系统启动时会自动运行该文件 你可以将系统每次启动时都要运行的命令放入该文件中 例如设置搜索路径 调入鼠标驱动和磁盘缓存 设置系统环境变量等 AUTOEXEC BAT为DOS系统的自动运行批处理文件 由COMMAND COM启动时解释执行 DOS批处理命令 常用命令echo call pause rem 小技巧 用 代替rem 是批处理文件最常用的几个命令 DOS批处理命令 首先 不是一个命令 而是DOS批处理的一个特殊标记符 仅用于屏蔽命令行回显 下面是DOS命令行或批处理中可能会见到的一些特殊标记符 文件通配符 字符串界定符 命令管道符 文件重定向符 命令行回显屏蔽符 参数开关引导符 批处理标签引导符 批处理变量引导符 DOS批处理命令 echo表示显示此命令后的字符echooff表示在此语句后所有运行的命令都不显示命令行本身 与echooff相象 但它是加在每个命令行的最前面 表示运行时不显示这一行的命令行 只能影响当前行 call调用另一个批处理文件 如果不用call而直接调用别的批处理文件 那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令 pause运行此句会暂停批处理的执行并在屏幕上显示Pressanykeytocontinue 的提示 等待用户按任意键后继续rem表示此命令后的字符为解释行 注释 不执行 只是给自己今后参考用的 相当于程序中的注释 DOS批处理命令 特殊命令ifgotochoicefor是批处理文件中比较高级的命令 如果这几个你用得很熟练 你就是批处理文件的专家啦 DOS批处理命令 一 if是条件语句 用来判断是否符合规定的条件 从而决定执行不同的命令 有三种格式 1 if not 参数 字符串 待执行的命令参数如果等于 not表示不等 下同 指定的字符串 则条件成立 运行命令 否则运行下一句 例 if 1 a formata DOS批处理命令 2 if not exist 路径 文件名待执行的命令如果有指定的文件 则条件成立 运行命令 否则运行下一句 如 ifexistc config systypec config sys表示如果存在c config sys文件 则显示它的内容 DOS批处理命令 3 iferrorlevel待执行的命令很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果 或者状态 通过iferrorlevel命令可以判断程序的返回值 根据不同的返回值来决定执行不同的命令 返回值必须按照从大到小的顺序排列 出现此种现象的原因是 iferrorlevel比较返回码的判断条件并非等于 而是大于等于 如果返回值等于指定的数字 则条件成立 运行命令 否则运行下一句 如iferrorlevel2gotox2 DOS批处理命令 二 goto批处理文件运行到这里将跳到goto所指定的标号 标号即label 标号用 后跟标准字符串来定义 处 goto语句一般与if配合使用 根据不同的条件来执行不同的命令组 gotoend endechothisistheend标号用 字符串 来定义 标号所在行不被执行 DOS批处理命令 三 choice使用此命令可以让用户输入一个字符 用于选择 从而根据用户的选择返回不同的errorlevel 然后于iferrorlevel配合 根据用户的选择运行不同的命令 CHOICE Cchoices N CS Ttimeout Dchoice Mtext 描述 该工具允许用户从选择列表选择一个项目并返回所选项目的索引 DOS批处理命令 参数列表 Cchoices指定要创建的选项列表 默认列表是 YN N在提示符中隐藏选项列表 提示前面的消息得到显示 选项依旧处于启用状态 CS允许选择分大小写的选项 在默认情况下 这个工具是不分大小写的 Ttimeout做出默认选择之前 暂停的秒数 可接受的值是从0到9999 如果指定了0 就不会有暂停 默认选项会得到选择 Dchoice在nnnn秒之后指定默认选项 字符必须在用 C选项指定的一组选择中 同时 必须用 T指定nnnn Mtext指定提示之前要显示的消息 如果没有指定 工具只显示提示 显示帮助消息 DOS批处理命令 简单地说 使用此命令可以让用户输入一个字符 从而运行不同的命令 使用时应该加 c 参数 c 后应写提示可输入的字符 之间无空格 它的返回码为1234 CHOICE C 123456789ABCDEFGHIJK NIFERRORLEVEL8GOTOUSB TESTIFERRORLEVEL7GOTO485 TEST IFERRORLEVEL2GOTOBIOS TESTIFERRORLEVEL1GOTOMOUSE TEST DOS批处理命令 四 for循环命令 只要条件符合 它将多次执行同一命令 语法 对一组文件中的每一个文件执行某个特定命令 FOR variableIN set DOcommand command parameters variable指定一个单一字母可替换的参数 set 指定一个或一组文件 可以使用通配符 command指定对每个文件执行的命令 command parameters为特定命令指定参数或命令行开关 DOS批处理命令 例如一个批处理文件中有一行 for cin bat txt dotype c则该命令行会显示当前目录下所有以bat和txt为扩展名的文件的内容 DOS批处理编程方法 1 IF EXIST1 首先用记事本在C 建立一个test1 bat批处理文件 文件内容如下 echooffIFEXIST AUTOEXEC BATTYPE AUTOEXEC BATIFNOTEXIST AUTOEXEC BATECHO AUTOEXEC BATdoesnotexist然后运行它 C TEST1 BAT如果C 存在AUTOEXEC BAT文件 那么它的内容就会被显示出来 如果不存在 批处理就会提示你该文件不存在 DOS批处理编程方法 2 接着再建立一个test2 bat文件 内容如下 ECHOOFFIFEXIST 1TYPE 1IFNOTEXIST 1ECHO 1doesnotexist执行 C TEST2AUTOEXEC BAT该命令运行结果同上 DOS批处理编程方法 说明 1 IFEXIST是用来测试文件是否存在的 格式为IFEXIST 路径 文件名 命令 2 test2 bat文件中的 1是参数 DOS允许传递9个批参数信息给批处理文件 分别为 1 9 0表示test2命令本身 这有点象编程中的实参和形参的关系 1是形参 AUTOEXEC BAT是实参 DOS批处理编程方法 更进一步的 建立一个名为TEST3 BAT的文件 内容如下 echooffIF 1 A ECHOXIAOIF 2 B ECHOTIANIF 3 C ECHOXIN如果运行 C TEST3ABC屏幕上会显示 XIAOTIANXIN DOS批处理编程方法 如果运行 C TEST3AB屏幕上会显示XIAOTIAN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深度解析(2026)《GBT 30085-2013工业系统、装置和设备及工业产品 电缆和电线的标记》
- 深度解析(2026)《GBT 30017-2013铜加工企业安全生产综合应急预案》
- 深度解析(2026)《GBT 29862-2013纺织品 纤维含量的标识》
- 初中离队入团主题班会青春起跑线十四岁我们该成为怎样的人
- 2026年食品厂豆制品包装设计委托合同
- 2025届广东省惠州市惠东县高三第三次模拟考试英语试题(含答案)
- 高端能源装备极限制造热处理产线能力提升项目可行性研究报告模板-备案审批
- 2025北京一七一中高一10月月考化学试题及答案
- 2025北京通州区高三(上)期中数学试题及答案
- 项目建设安全培训方案
- 赤子城科技-市场前景及投资研究报告-全球化社交娱乐公司灌木丛矩阵出海壁垒
- 2026上海市众仁慈善服务中心招聘20人备考题库含答案详解(夺分金卷)
- 中国红斑狼疮诊疗指南(2026版)
- 2026年北京西城区高三一模化学试卷及答案
- 内蒙古包头市2026届中考生物四模试卷含解析
- 雨课堂学堂在线学堂云《人工智能安全与伦理(北京航空航天)》单元测试考核答案
- 2026年安庆岳西县县级公立医院公开招聘专业技术人员12名考试备考题库及答案解析
- 常见急症的急救护理措施
- 2026年山东德州市高三一模高考英语试卷试题(答案详解)
- 天津网约车考试题库及答案
- 抵税车交易合同范本
评论
0/150
提交评论