dos批处理文件的编写.pdf

上传人:灯火****19 文档编号:134975445 上传时间:2020-06-10 格式:PDF 页数:98 大小:326.05KB
返回 下载 相关 举报
dos批处理文件的编写.pdf_第1页
第1页 / 共98页
dos批处理文件的编写.pdf_第2页
第2页 / 共98页
dos批处理文件的编写.pdf_第3页
第3页 / 共98页
dos批处理文件的编写.pdf_第4页
第4页 / 共98页
dos批处理文件的编写.pdf_第5页
第5页 / 共98页
点击查看更多>>
资源描述

《dos批处理文件的编写.pdf》由会员分享,可在线阅读,更多相关《dos批处理文件的编写.pdf(98页珍藏版)》请在金锄头文库上搜索。

1、BAT 批处理编辑详解 对一个喜欢批处理绝对有用 BAT 批处理编辑详解 对一个喜欢批处理绝对有用 BAT 批处理编辑详解 第一节 批处理基础 按照惯例 先讲一下什么是 批处理 顾名思义 批处理就是把一批或者说是 一条条命令放在一个文本里 然后批量执行 执行这 一批命令的文件的扩展名是 BAT 或者 CMD 把任何一批命令放入在有这样扩展名 的文件里 执行时里面的命令就会一条条的执行完 当然 我们还可以在其中加入一些逻辑判断的语句 让里面的命令在满足一定条件时执 行指定的命令 了解了大概意思后 我们正式开始学习 先看一个简单的例子 echo off echo 欢迎来到非常 BAT pause

2、把上面的 3 条命令保存为 test bat 或者 test cmd 然后执行 他就会在屏幕上显 示二行话 欢迎来到非常 BAT 请按任意键继续 这就是一个简单批处理文件了 我们来分析一下 这个批处理文件一共就用了 2 条命令 echo 和 pause 还有一个特殊符号 符号在批处理中的作用是关闭当前行命令的回显 也就是不显示执行的是什么 命令 只显示命令的结果 你可以执行下面这个批处理文件来理解 保存为 bat 或者 CMD echo 你好 echo 你好 pause echo 命令的作用有两个 一个是在 CMD 上回显一行内容 如 echo 欢迎来到非常 BAT 还一个是关闭命令的回显 e

3、cho off echo off 的作用就相当于在每条命令前面加一个 符号 这样所有的命令将只会 显示结果不显示命令 我们在 echo off 这命令前加一个 符号是为了不让 echo off 这条命令本身显示 出来 让批处理更完美 pause 命令就是暂停的意思 防止批处理执行完后直接退出 执行 pause 命令后会 自动在 CMD 里显示 请按任意键继续 这样一行话 从上面这个简单的批处理中 我们可以发现其实批处理就是运用一些含有特殊意 义的符号和一些完成指定功能的命令组合而成 那么 在批处理中有多少这样的特殊符号和功能命令呢 我们现在就来仔细了解一下一 些最常用的 以下内容来源网络 请各

4、位仔细阅读 好进入下节的实例说明 批处理的常见命令 REM ECHO GOTO CALL PAUSE IF 还有 FOR SETLOCAL SHIFT 这几个命令比较难 不适合写在基础篇 以后说 明 批处理定义 顾名思义 批处理文件是将一系列命令按一定的顺序集合为一个可 执行的文本文件 其扩展名为 BAT 这些命令统称批处理命令 介绍命令 1 REM REM 是个注释命令 一般用来给程序加上注解 该命令后的内容在程序执行时 将不会被显示和执行 例 REM 这个命令就是注释 这一句将不会被执行 2 ECHO ECHO 是一个回显命令 主要参数有 OFF 和 ON 一般用 ECHO MESSAGE

5、 来显示一个 特定的消息 例 Echo off Rem 以上代表关闭回显 就是不显示所执行的命令 Echo 这个就是消息 message Rem 以上代表显示 这就是消息 message 这列字符 咱们来看看执行结果 3 GOTO GOTO 会点编程的朋友就会知道这是跳转的意思 在批处理中允许以 XXX 来构建一个标号 然后用 GOTO XXX 直接来执行标号 后的命令 例 lable REM 上面就是名为 LABEL 的标号 DIR C DIR D GOTO lable REM 以上程序跳转标号 LABEL 处继续执行 咱们来看看结果 4 CALL CALL 命令可以在批处理执行过程中调用另

6、一个批处理 当另一个批处理执行完 后 再继续执行原来的批处理 例 创建一个 2 BAT 内容如下 ECHO 这就是 2 的内容 创建一个 1 BAT 内容如下 ECHO 这是 1 的内容 CALL 2 BAT ECHO 1 和 2 的内容全部显示完成 执行 1 BAT 来看看结果 5 PAUSE PAUSE 玩游戏的人都知道 暂停的意思 在这里就是停止系统命令的执行并显示下面的内容 例 PAUSE 6 IF IF 条件判断语句 语法格式如下 IF NOT ERRORLEVEL number command IF NOT string1 string2 command IF NOT EXIST

7、filename command 解释下 NOT 将返回结果取反值 就是 如果没有 的意思 ERRORLEVEL 是命令执行完成后返回的退出值 Number 退出值的数字取值范围 0 255 判断时值的排列顺序应该由大到小 返回的值大 于等于指定的值时 条件成立 string1 string2 string1 和 string2 都为字符的数据 英文内字符的大小写将看作不同 这个条 件中的等于号必须是两个 绝对相等的意思 条件相等后即执行后面的 command EXIST filename 为文件或目录存在的意思 IF ERRORLEVEL 这个句子必须放在某一个命令的后面 执行命令后由 IF

8、 ERRORLEVEL 来判断命令的返回值 例 1 IF NOT ERRORLEVEL number command 检测命令执行完后的返回值做出判断 echo off dir z rem 如果退出代码为 1 不成功 就跳至标题 1 处执行 IF ERRORLEVEL 1 goto 1 REM 如果退出代码为 0 成功 就跳至标题 0 处执行 IF ERRORLEVEL 0 goto 0 0 echo 命令执行成功 Rem 程序执行完毕跳至标题 exit 处退出 goto exit 1 echo 命令执行失败 Rem 程序执行完毕跳至标题 exit 处退出 goto exit exit Rem

9、 这里是程序的出口 批处理文件制作教程 批处理文件是无格式的文本文件 现在无盘清理基本都是靠它实现的 因为简单 实用下面就是方便大家怎样创建批处理文件的 一简单批处理内部命令简介 1 Echo 命令 打开回显或关闭请求回显功能 或显示消息 如果没有任何参数 echo 命令将 显示当前回显设置 语法 echo on off message Sample echo off echo hello world 在实际应用中我们会把这条命令和重定向符号 也称为管道符号 一般用 结合来实现输入一些命令到特定格式的文件中 这将在以后的例子中体现出来 2 命令 表示不显示 后面的命令 在入侵过程中 例如使用批

10、处理来格式化敌人的硬盘 自然不能让对方看到你使用的命令啦 Sample echo off echo Now initializing the program please wait a minite format X q u autoset format 这个命令是不可以使用 y 这个参数的 可喜 的是微软留了个 autoset 这个参数给我们 效果和 y 是一样的 3 Goto 命令 指定跳转到标签 找到标签后 程序将处理从下一行开始的命令 语法 goto label label 是参数 指定所要转向的批处理程序中的行 Sample if 1 goto noparms if 2 goto n

11、oparms 如果这里的 if 1 2 你不明白的话 先跳过去 后面会有详细的解释 Rem check parameters if null show usage noparms echo Usage monitor bat ServerIP PortNumber goto end 标签的名字可以随便起 但是最好是有意义的字母啦 字母前加个 用来表示这 个字母是标签 goto 命令就是根据这个 来寻找下一步跳到到那里 最好有一些 说明这样你别人看起来才会理解你的意图啊 4 Rem 命令 注释命令 在 C 语言中相当与 它并不会被执行 只是起一个注释 的作用 便于别人阅读和你自己日后修改 Rem

12、 Message Sample Rem Here is the description 5 Pause 命令 运行 Pause 命令时 将显示下面的消息 Press any key to continue Sample echo off begin copy a d back echo Please put a new disk into driver A pause goto begin 在这个例子中 驱动器 A 中磁盘上的所有文件均复制到 d back 中 显示的注 释提示您将另一张磁盘放入驱动器 A 时 pause 命令会使程序挂起 以便您更 换磁盘 然后按任意键继续处理 6 Call

13、命令 从一个批处理程序调用另一个批处理程序 并且不终止父批处理程序 call 命 令接受用作调用目标的标签 如果在脚本或批处理文件外使用 Call 它将不会 在命令行起作用 语法 call Drive Path FileName BatchParameters label arguments 参数 Drive Path FileName 指定要调用的批处理程序的位置和名称 filename 参数必须具有 bat 或 cmd 扩展名 7 start 命令 调用外部程序 所有的 DOS 命令和命令行程序都可以由 start 命令来调用 入侵常用参数 MIN 开始时窗口最小化 SEPARATE 在分

14、开的空间内开始 16 位 Windows 程序 HIGH 在 HIGH 优先级类别开始应用程序 REALTIME 在 REALTIME 优先级类别开始应用程序 WAIT 启动应用程序并等候它结束 parameters 这些为传送到命令 程序的参数 执行的应用程序是 32 位 GUI 应用程序时 CMD EXE 不等应用程序终止就返回 命令提示 如果在命令脚本内执行 该新行为则不会发生 8 choice 命令 choice 使用此命令可以让用户输入一个字符 从而运行不同的命令 使用时应 该加 c 参数 c 后应写提示可输入的字符 之间无空格 它的返回码为 1234 如 choice c dme

15、defrag mem end 将显示 defrag mem end D M E Sample Sample bat 的内容如下 echo off choice c dme defrag mem end if errorlevel 3 goto defrag 应先判断数值最高的错误码 if errorlevel 2 goto mem if errotlevel 1 goto end defrag c dos defrag goto end mem mem goto end end echo good bye 此文件运行后 将显示 defrag mem end D M E 用户可选择 d m e

16、然后 if 语句将作出判断 d 表示执行标号为 defrag 的程序段 m 表示执行标号为 mem 的 程序段 e 表示执行标号为 end 的程序段 每个程序段最后都以 goto end 将程序 跳到 end 标号处 然后程序将显示 good bye 文件结束 9 If 命令 if 表示将判断是否符合规定的条件 从而决定执行不同的命令 有三种格式 1 if 参数 字符串 待执行的命令 参数如果等于指定的字符串 则条件成立 运行命令 否则运行下一句 注意 是两个等号 如 if 1 a format a if 1 goto noparms if 2 goto noparms 2 if exist 文件名 待执行的命令 如果有指定的文件 则条件成立 运行命令 否则运行下一句 如 if exist config sys edit config sys 3 if errorlevel if not errorlevel 数字 待执行的命令 如果返回码等于指定的数字 则条件成立 运行命令 否则运行下一句 如 if errorlevel 2 goto x2 DOS 程序运行时都会返回一个数字给 DO

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号