BAT(批处理)文件编写详细手册

BAT(批处理)文件编写详细手册
BAT(批处理)文件编写详细手册

BAT(批处理)文件编写详细手册

一、批处理文件简介

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

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

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

简单的说,批处理的作用就是自动的连续执行多条命令。

二、批处理中常用命令:

1.echo命令:表示显示此命令后的字符。字符不需要使用引号。其中,%和^两个字

符不能显示。

2.Echo off命令:表示在此语句后所有运行的命令都不显示命令行本身。即关闭echo

回显功能。可以使用echo on打开。

3.@命令:它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能

影响当前行)。

4.call命令:调用另一个批处理文件(如果不用call而直接调用别的批处理文件,

那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。

5.pause命令:运行此句会暂停批处理的执行并在屏幕上显示Press any key to

continue...的提示,等待用户按任意键后继续。如果不想显示以上英文提示信息,

可以这样写:pause>null

6.rem命令:表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考

用的(相当于程序中的注释)。

7.::命令:与rem命令等效。

例1:用edit编辑a.bat文件,输入下列内容后存盘为c:/a.bat,执行该批处理

文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。

批处理文件的内容为: 命令注释:

@echo off //不显示后续命令行及当前命令行

dir c:/*.* >a.txt //将c盘文件列表写入a.txt

call c:/ucdos/ucdos.bat //调用ucdos

echo 你好 //显示"你好"

pause //暂停,等待按键继续

rem 准备运行wps //注释:准备运行wps

cd ucdos //进入ucdos目录

wps //运行wps

三、批处理文件的参数:

批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符"%"。%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:

@echo off

format %1

如果执行C:/>f a:

那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:

例3:C:根目录下一批处理文件名为t.bat,内容为:

@echo off

type %1

type %2

那么运行C:/>t a.txt b.txt

%1 : 表示a.txt

批处理的一些简单应用

内容:批处理应用的几个例子 作者:e哥(eaggle_wei) 时间:2011.3.6-2011.6.22 1.刷BIOS 我们在做测试工作时,经常要刷BIOS,而且BIOS时常更新,为了方便我们通常会把同一个机种的BIOS放在U盘中那个机种的文件名下,例如我做的P4LJ0的案子,里面BIOS 的版本从P4LJ0001一直更新到P4LJ0017,也就是文件名P4LJ0里面有17个关于BIOS的子文件,那么我们在刷BIOS时(比如我们刷P4LJ0001的bios)在dos下就会输入:C:\>cd P4LJ0 C:\P4LJ0>cd P4LJ0001 C:\ P4LJ0\P4LJ0001>bios.bat 这样一步一步来很麻烦,尤其是要刷新几十台机器的时候,所以我们就想到写个批处理放到根目录下,这样就不会每次按键按得手疼了。 例: cd P4LJ0 cd P4LJ0001 bios.bat 我们把以上内容放到一个简单字母或者数字命名的批处理中,保存下来存到U盘根目录下,例如保存到1.bat中。这样刷新时直接在提示符C:\>下输入1,然后回车就OK了,是不是很省事?当然有没有全自动化的,就是只需要插U盘,然后设置从U盘启动就OK了的?当然有了,比如我们把这个批处理命名为autoexec.bat就可以实现了,因为批处理默认这个批处理文件自动执行,但本人不建议这样做,即使你这样做了在工作结束后一定要记得把它删掉,否则可能图一时方便为以后制造不必要的麻烦。比如你把U盘插到另一个不共用的BIOS的机种上启动,这时刷完BIOS你就悲剧了,开不了机。 当然像我这种菜鸟,在刚开始看批处理的时候,连如何生成.bat文件都不懂,还以为是个高科技的东西,每次都是把一个现成的批处理文档换个位置重命名后,把要修改的内容从UltraEdit编辑器里面拷贝进去。后来找到一种新方法,先保存到一个txt文档中,然后重命名时强制修改后缀,如把1.txt重命名为1.bat后回车,当然电脑会提示你“如果更改扩展名,可能会导致文件不可用,确实要更改吗?不理会它,点是就可以了。不过使用这种方法时要注意不能把文件设为隐藏文件名,否则你找不到扩展名。至于怎么修改,哥好人做到底,知道的就跳过。打开我的电脑/计算机→在最上面的标题栏点“工具”→文件夹选项→查看→勾选“隐藏已知文件类型的扩展名”。 2.打开工作时要用到一天的东西 批处理在windows操作系统出现以后,很少有人问津了,像我们干BIOS的能够有幸知道一些,已经成为批处理的有生力量了,但一个编程高手如果不懂批处理,顶多只能算有点小成绩,像我等菜鸟懂一点批处理,毕竟还是有好处的,凡是病毒大多都包含有批处理,因为它太强大了,只要你轻轻双击一下鼠标,其他的工作就不用你做了,所以其实有时候不是病毒厉害,是你不懂病毒而打开了它,当然现在很多病毒是繁殖能力极强的,只要你插了U盘,就会被感染,这样子你就会防不胜防,所以瑞星,金山毒霸等这些杀毒软件还是需要的。不过要知道,杀毒软件永远滞后于病毒,所以你懂点批处理的小常识,就可以尽量避免打开某些恶意软件,增强你的防范能力。陈冠希的艳照门据说就是不懂照相机有备份恢复删除的知识而传出来的,所以建议大家没事多学点东西。 言归正传,比如我们要打开工作时常用的OUTLOOK,lingoes,Skype等东西,每次双击再打开,这样其实也不麻烦,但有没有办法一次性把他们都打开呢?答案是肯定的,那

十分经典的excel批处理教程

十分经典的批处理教程 这是一篇技术教程,真心诚意会用很简单的文字表达清楚自己的意思,只要你识字就能看懂,就能学到知识。写这篇教程的目的,是让每一个看过这些文字的朋友记住一句话:如果爱可以让事情变的更简单,那么就让它简单吧!看这篇教程的方法,就是慢!慢慢的,如同品一个女人、一杯茗茶,你会发现很多以前就在眼前的东西突然变的很遥远,而有些很遥远的东西却又突然回到了眼前。. 先概述一下批处理是个什么东东。批处理的定义,至今我也没能给出一个合适的----众多高手们也都没给出----反正我不知道----看了我也不一定信服----我是个菜鸟,当然就更不用说了;但我想总结出一个"比较合适的",而且我也相信自己可以把它解释的很清楚,让更多的菜鸟都知道这是个什么东东,你用这个东东可以干什么事情。或许你会因为这篇文章而"无条件爱上批处理",那么我的目的就达到了----我就是要让你爱上它,我就这么拽,你能怎么着??真的,爱有时候就这么拽,就是这么没理由,就是这么不要脸!真的! 按照我的理解,批处理的本质,是一堆DOS命令按一定顺序排列而形成的集合。 OK,never claver and get to business(闲话少说言归正传)。批处理,也称为批处理脚本,英文译为BA TCH,批处理文件后缀BA T就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。批处理有一个很鲜明的特点:使用方便、灵活,功能强大,自动化程度高。我不想让自己写的教程枯燥无味,因为牵缠到代码(批处理的内容算是代码吧?)的问题本来就是枯燥的,很少有人能面对满屏幕的代码而静下心来。所以我会用很多简单实用的例子让读这篇教程的朋友去体会批处理的那四射的魅力,感受它那古灵精怪的性格,不知不觉中爱上批处理(晕,怎么又是爱?到底批处理和爱有什么关系?答案:没有!)。再说句"闲话":要学好批处理,DOS基础一定要牢!当然脑子灵活也是很重要的一方面。 例一、先给出一个最easy的批处理脚本让大家和它混个脸熟,将下面的几行命令保存为name.bat然后执行(以后文中只给出代码,保存和执行方式类似): ping https://www.360docs.net/doc/4710702276.html, > a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt exit 是不是都能看的懂?是不是很easy?但它的作用却是很实用的,执行这个批处理后,可以在你的当前盘建立一个名为a.txt的文件,它里面记录的信息可以帮助你迅速找到速度最快的QQ服务器,从而远离"从服务器中转"那一痛苦的过程。这里>的意思,是把前面命令得到的东西放到后面所给的地方,>>的作用,和>的相同,区别是把结果追加到前一行得出的结果的后面,具体的说是下一行,而前面一行命令得出的结果将保留,这样可以使这个a.txt文件越来越大(想到如何搞破坏了??)。By the way,这个批处理还可以和其他命令结合,搞成完全自动化判断服务器速度的东东,执行后直接显示速度最快的服务器IP,是不是很爽?后面还将详细介绍。 例二、再给出一个已经过时的例子(a.bat):

非常经典BAT知识教程

手把手教你写批处理(willsort题注版) Climbing兄可谓用心良苦,受其感昭,略紧微薄之力;原文内容一字未易,仅于每段之下另加题注,其文大多非为纠错,多是年来体会,或偶得,或渐悟,未免偏颇;又加近来俗事渐多,闲情愈少,心浮气燥,一蹴而就。义理悖逆,敬请斧正;措辞不当,尚请莫怪。 另,建议Climbing兄取文不用拘泥于国内,此类技术文章,内外水平相差极大;与其修正国内只言片语,不如翻译国外优秀著述。 -------------------------------------------------------- 标题:手把手教你写批处理-批处理的介绍 作者:佚名 编者:Climbing 出处:中国DOS联盟之联合DOS论坛 题注:willsort 日期:2004-09-21 -------------------------------------------------------- 批处理的介绍 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 ====willsort编注===================================================== .bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch,unix shell,awk, basic,perl等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。====================================================================== == 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 ====willsort题注==================================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应用越来越“边缘化”。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。 ====================================================================== ==

windows批处理文件(.bat&)

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 file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为 c语言文件或者c语言源代码,但只有编译连接后的exe文件才可以称之为c 语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。 =========================== 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所 在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个

实用批处理(bat)教程

目录 第一章批处理基础 第一节常用批处理内部命令简介 1、REM 和:: 2、ECHO 和@ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和: 9、FIND 10、START 11、assoc 和ftype 12、pushd 和popd 13、CALL 14、shift 15、IF 16、setlocal 与变量延迟(ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION 启动或停用延缓环境变量扩展名。) 17、ATTRIB显示或更改文件属性 第二节常用特殊符号 1、@命令行回显屏蔽符 2、%批处理变量引导符 3、> 重定向符 4、>>重定向符 5、<、>、<& 重定向符 6、|命令管道符 7、^转义字符 8、组合命令 9、& 组合命令 10、||组合命令 11、\"\"字符串界定符 12、, 逗号 13、; 分号 14、() 括号 15、! 感叹号 第二章FOR命令详解 一、基本格式 二、参数/d仅为目录 三、参数/R递归(文件名) 四、参数/L迭代数值范围 五、参数/F迭代及文件解析 第三章FOR命令中的变量

一、~I- 删除任何引号(\"),扩展%I 二、%~fI- 将%I 扩展到一个完全合格的路径名 三、%~dI- 仅将%I 扩展到一个驱动器号 四、%~pI- 仅将%I 扩展到一个路径 五、%~nI- 仅将%I 扩展到一个文件名 六、%~xI- 仅将%I 扩展到一个文件扩展名 七、%~sI- 扩展的路径只含有短名 八、%~aI- 将%I 扩展到文件的文件属性 九、%~tI- 将%I 扩展到文件的日期/时间 十、%~zI- 将%I 扩展到文件的大小 十一、%~$PATH:I 第四章批处理中的变量 一、系统变量 二、自定义变量 第五章set命令详解 一、用set命令设置自定义变量 二、用set命令进行简单计算 三、用set命令进行字符串处理 1、字符串替换 2、字符串截取 第六章if命令讲解 第一种用法:IF [NOT] ERRORLEVEL number command 第二种用法:IF [NOT] string1==string2 command 第三种用法:IF [NOT] EXIST filename command 第四种用法:IF增强的用法 第七章DOS编程高级技巧 一、界面设计 二、if…else…条件语句 三、循环语句 四、子程序 五、用ftp命令实现自动下载 六、用7-ZIP实现命令行压缩和解压功能 七、调用VBScript程序 八、将批处理转化为可执行文件 九、时间延迟 1、利用ping命令延时 2、利用for命令延时 3、利用vbs延迟函数,精确度毫秒,误差1000毫秒内 4、仅用批处理命令实现任意时间延迟,精确度10毫秒,误差50毫秒内 十、模拟进度条 十一、特殊字符的输入及应用 十二、随机数(%random%)的应用技巧 十三、变量嵌套与命令嵌套 1、更正了所有的错别字,适当排版,增加条理性。

WINDOWS下批处理文件(BAT)的参数之编辑符

批处理参数扩展变量(%0 到 %9)。当在批处理文件中使用批处理参数时,%0 将由批处理文件名替换,而 %1 到 %9 将由在命令行键入的相应参数替换。 可以在批处理参数中使用编辑符。编辑符使用当前的驱动器和目录信息将批处理参数扩展为部分或完整的文件或目录名。要使用编辑符,请键入百分号 (%) 字符,后面是波形符号 (~) 字符,然后键入合适的编辑符(即 %~modifier)。 下表列出了可在扩展中使用的编辑符。 编辑符说明 %~ %~1 扩展 %1 并删除任何引号 ( %~f %~f1 将 %1 扩展到完全合格的路径名 %~d %~d1 将 %1 扩展到驱动器盘符 %~p %~p1 将 %1 扩展到路径 %~n %~n1 将 %1 扩展到文件名 %~x %~x1 将 %1 扩展到文件扩展名 %~s %~s1 扩展的路径仅包含短名称 %~a %~a1 将 %1 扩展到文件属性 %~t %~t1 将 %1 扩展到文件日期/时间 %~z %~z1 将 %1 扩展到文件大小 %~$PATH: %~$PATH:1 搜索 PATH 环境变量中列出的目录,并将 %1 扩展到第一个找到的目录的完全合格名称。如果没有定义环境变量名称,或没有找到文件,则此编辑符扩展成空字符串 下表列出了可用于获取复杂结果的编辑符和限定符的可能组合情况: 编辑符说明 %~dp0 将 %0 扩展到驱动器盘符+路径+文件名+扩展名 %~nx1 将 %1 扩展到文件名和扩展名

%~dp$PATH:1 在 PATH 环境变量列出的目录中搜索 %1,并扩展到第一个找到的目录的驱动器盘符和路径 %~dpn0 将%0扩展到驱动器盘符+路径+文件名 %~ftza1 将 %1 扩展到类似 dir 的输出行 注意: 在上面的例子中,可以使用其它批处理参数替换 %1 和 PATH. %* 编辑符是唯一可代表在批处理文件中传递的所有参数的编辑符。不能将该编辑符与 %~ 编辑符组合使用。%~ 语法必须通过有效的参数值来终止。 不能以与使用环境变量相同的方式使用批处理参数。不能搜索或替换值,或检查子字符串。然而,可以将参数分配给环境变量,然后使用该环境变量。

如何编写bat文件

如何编写bat文件 第一节:(主要是一些界面形式功能的实现以及初始化) 1.“@echo off”--我们所写的BAT一开始一般都有这一句,这一句的作用是:使所有的命令响应隐藏。“@”--本行命令不回显 。(本来如果你用echo off就可以了,但是还是能够看到echo off这条命令在CMD下, 影响美观) 2.“color 1e”--设置默认的控制台前景和背景颜色。当前我设为蓝底黄字,具体颜色请在CMD下用“color /?”查询。 --这里又提到了这个参数“/?”,一般CMD下命令后加“/?”就会显示这条命令的帮助。 3.“rem”--注释作用,批处理执行过程中前不执行它,rem 后的字符只作注释作用。 4.“title”--设置命令提示窗口的窗口标题。默认为“cmd”。改成自己喜欢的多有个性,嘿嘿。 5.“cls”--不多说,清屏命令。主要是怕前面的一些空白或字符出现影响美观。 6.“set”--这个命令的作用很大,请用“set /?”查询具体使用方法。本例“settopip=172.16.”是 将一个名为“topip”的变量值设为“172.16.”。注意CMD下变量的设置不区别数字与字符, 能够自动根据提供的值调整。下行“settheip=0.0”同理。 7.“echo .”--在新行中显示一个“.”。echo命令能显示其后的comment。这里提几个有趣实用的用法--“echo.”,注意与前面的不同,“echo”与“.”间无空格。这条命令如同一个回车,在 新行不显示任何信息并换行。“echo ”,实现响铃的提示音。后面一个字符的输入方法是 在CMD下用“ctrl+G”,而这个字符得到的方法是CMD下用命令“echo "ctrl+G" >ex.txt”, 存入ex.txt文件,再从那里提取出来的。嘿嘿,如果你懒得做,就copy我在上面提供的 字符喽。 8.“if”--这条命令也会经常用到,请用“if /?”学习更多信息。本例“if not exist scanipc.exe (echo 文件错误!……)”,实现功能:当同级目录下不存在“scanipc.exe”时,提示“文件错误!……”。否则不提示。“if not exist filename”在批处理中使用比较多些。 9.“:top”,设置一个标志点,标志名为“top”。“:”的作用就是设置标志。网上有文章说“使用"::comment"作为注释比"rem comment"执行效率更高。”我相信,这里也建议大家,如果BAT中注释较多时,请使用“::comment”设置。 10.“set /p pno=”--设置一个变量,并接受用户输入。BAT不需要预先声明变量,只在需要 时设置。参数“/p”:将变量数值设成用户输入的一行输入。 11.“if %pno% gtr 9 gotoonerrorspno”--检验用户输入值是否大于9,是,则转到一个指定标 志点。这里注意BAT中变量引用时要在前后加“%”,但在if语句中可有可无,具体应用 大家多写几遍就有体会。 12.“goto label”--无条件跳转到指定标志位并向后执行。BAT好像只有这么一个跳转语句了,作用不用我说,用了就知道。注意不要构成死循环。

教你如何自己编写BAT批处理文件2

特殊命令 if goto choice for是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。 一、if 是条件语句,用来判断是否符合规定的条件,从而决定执行不同的命令。有三种格式: 1、if [not] "参数" == "字符串" 待执行的命令 参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。 例:if "%1"=="a" format a: ==== if 的命令行帮助中关于此点的描述为: IF [NOT] string1==string2 command 在此有以下几点需要注意: 1. 包含字符串的双引号不是语法所必须的, 而只是习惯上使用的一种"防空"字符 2. string1 未必是参数, 它也可以是环境变量, 循环变量以及其他字符串常量或变量 3. command 不是语法所必须的, string2 后跟一个空格就可以构成一个有效的命令行 ============================= 2、if [not] exist [路径\]文件名待执行的命令 如果有指定的文件,则条件成立,运行命令,否则运行下一句。 如: if exist c:\config.sys type c:\config.sys 表示如果存在c:\config.sys文件,则显示它的内容。 ****** 注******** 也可以使用以下的用法: if exist command

device 是指DOS系统中已加载的设备, 在win98下通常有: AUX, PRN, CON, NUL COM1, COM2, COM3, COM4 LPT1, LPT2, LPT3, LPT4 XMSXXXX0, EMMXXXX0 A: B: C: ..., CLOCK$, CONFIG$, DblBuff$, IFS$HLP$ 具体的内容会因硬软件环境的不同而略有差异, 使用这些设备名称时, 需要保证以下三点: 1. 该设备确实存在(由软件虚拟的设备除外) 2. 该设备驱动程序已加载(aux, prn等标准设备由系统缺省定义) 3. 该设备已准备好(主要是指a: b: ..., com1..., lpt1...等) 可通过命令mem/d | find "device" /i 来检阅你的系统中所加载的设备 另外, 在DOS系统中, 设备也被认为是一种特殊的文件, 而文件也可以称作字符设备; 因为设备(device)与文件都是使用句柄(handle)来管理的, 句柄就是名字, 类似于文件名, 只不过句柄不是应用于磁盘管理, 而是应用于内存管理而已, 所谓设备加载也即指在内存中为其分配可引用的句柄. ================================== 3、if errorlevel 待执行的命令 很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。 如if errorlevel 2 goto x2 ==== 注=========== 返回值从大到小的顺序排列不是必须的, 而只是执行命令为goto 时的习惯用法, 当使用

【最全最详细】批处理经典入门教程

批处理经典入门教程!(从不懂到高手) 例一、先给出一个最easy的批处理脚本让大家和它混个脸熟,将下面的几行命令保存为name.bat然后执行(以后文中只给出代码,保存和执行方式类似): 代码如下: ping https://www.360docs.net/doc/4710702276.html, > a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt ping https://www.360docs.net/doc/4710702276.html, >> a.txt exit 是不是都能看的懂?是不是很easy?但它的作用却是很实用的,执行这个批处理后,可以在你的当前盘建立一个名为a.txt的文件,它里面记录的信息可以帮助你迅速找到速度最快的QQ服务器,从而远离“从服务器中转”那一痛苦的过程。这里>的意思,是把前面命令得到的东西放到后面所给的地方,>>的作用,和>的相同,区别是把结果追加到前一行得出的结果的后面,具体的说是下一行,而前面一行命令得出的结果将保留,这样可以使这个a.txt 文件越来越大(想到如何搞破坏了??)。By the way,这个批处理还可以和其他命令结合,搞成完全自动化判断服务器速度的东东,执行后直接显示速度最快的服务器IP,是不是很爽?后面还将详细介绍。 例二、再给出一个已经过时的例子(a.bat): @echo off if exist C:\Progra~1\Tencent\AD\*.gif del C:\Progra~1\Tencent\AD\*.gif a.bat 为什么说这是个过时的例子呢?很简单,因为现在已经几乎没有人用带广告的QQ了(KAO,我的QQ还显示好友三围呢!!),所以它几乎用不上了。但曾经它的作用是不可小窥的:删除QQ的广告,让对话框干干净净。这里用的地址是QQ的默认安装地址,默认批处理文件名为a.bat,你当然可以根据情况自行修改。在这个脚本中使用了if命令,使得它可以达到适时判断和删除广告图片的效果,你只需要不关闭命令执行后的DOS窗口,不按CTRL+C强行终止命令,它就一直监视是否有广告图片(QQ也再不断查看自己的广告是否被删除)。当然这个脚本占用你一点点内存,呵呵。 例三,使用批处理脚本查是否中冰河。脚本内容如下: 复制代码代码如下: @echo off

BAT和CMD脚本的编写与实际应用全解

BAT、CMD脚本的编写与实际应用 在微软官方的定义中,BAT属于批处理脚本(可以运行在DOS、WINDOWS下),是用来进行简化平时操作的批量化集成文件。而CMD,则是只能运行在NT系统下的批处理文件,其功能与BAT是一样的。 从早期的BAT开始,该文件就为大家提供了方便,并在WINDOWS出现后,它的能力可以说是万能的。从最基础的启动盘的引导,到注册表,甚至系统服务的操作,BAT与CMD都可以胜任。而且由于它简便的编写与通用性,很快就布满整个世界。 本文将简单介绍BAT与CMD脚本的编写过程,因为在下水平不高,所以如有错误欢迎指出! 一、BAT与CMD中的部分参数 1、定义文件夹的参数 目前我能够搜集到并可以给出意思的通用系统参数如下(不包括后边的解释部分): %windir% ——操作系统文件夹,一般为C:下的WINDOWS文件夹 %sys% ——系统根目录,也就是C:盘目录 %programfiles% ——Program Files目录,安装程序通常都安装在这个目录下 %systemdrive% ——操作系统所在磁盘,与%sys%属于同一目录 %systemroot% ——操作系统文件夹,一般为C:下的WINDOWS文件夹 %InfDir% ——系统根目录,也就是C:盘目录 %TEMP% ——当前用户的临时目录,一般是C:\Documents and Settings\用户名\Local Settings\Temp目录 2、基础操作参数(可以在CMD命令行模式中输入HELP获得) ASSOC 显示或修改文件扩展名关联。 AT 计划在计算机上运行的命令和程序。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式CTRL+C 检查。 CACLS 显示或修改文件的访问控制列表(ACLs)。 CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 CMD 打开另一个Windows 命令解释程序窗口。 COLOR 设置默认控制台前景和背景颜色。 COMP 比较两个或两套文件的内容。 COMPACT 显示或更改NTFS 分区上文件的压缩。 CONVERT 将FAT 卷转换成NTFS。您不能转换 当前驱动器。 COPY 将至少一个文件复制到另一个位置。 DATE 显示或设置日期。 DEL 删除至少一个文件。 DIR 显示一个目录中的文件和子目录。 DISKCOMP 比较两个软盘的内容。 DISKCOPY 将一个软盘的内容复制到另一个软盘。

bat文件语句语法

BAT文件语法和技巧(bat文件的编写及使用)(转载一) 比较有用的东比较有用的东西 首先,批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows 的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。 第四,在DOS和Win9x/Me系统下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文件中,例如设置搜索路径,调入鼠标驱动和磁盘缓存,设置系统环境变量等。下 面是一个运行于Windows 98下的autoexec.bat的示例: ? 1 2 3 4 5 6 7 @ECHOOFF PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;C:\SYSTOOLS;C:\WINTOOLS;C:\B LH SMARTDRV.EXE /X LH https://www.360docs.net/doc/4710702276.html, /INSERT LH CTMOUSE.EXE SETTEMP=D:\TEMP SETTMP=D:\TEMP 批处理的作用 简单的说,批处理的作用就是自动的连续执行多条命令。 这里先讲一个最简单的应用:在启动wps软件时,每次都必须执行(>前面内容表示DOS

bat文件的基本应用

bat文件的基本应用 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 file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为c语言文件或者c语言源代码,但只有编译连接后的exe文件才可以称之为c语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。 =========================== 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后

目前为止最全的批处理教程

目录 第一章 批处理基础 第一节 常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和 : 9、FIND 10、START 11、assoc 和 ftype 12、pushd 和 popd 13、CALL 14、shift 15、IF 16、setlocal 与 变量延迟(ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION 启动或停用延缓环境变量扩展名。) 17、ATTRIB显示或更改文件属性 第二节 常用特殊符号

1、@命令行回显屏蔽符 2、%批处理变量引导符 3、> 重定向符 4、>>重定向符 5、<、>、<& 重定向符 6、|命令管道符 7、^转义字符 8、组合命令 9、& 组合命令 10、||组合命令 11、\"\"字符串界定符 12、, 逗号 13、; 分号 14、() 括号 15、! 感叹号 第二章 FOR命令详解 一、基本格式 二、参数 /d仅为目录 三、参数 /R递归(文件名) 四、参数 /L迭代数值范围 五、参数 /F迭代及文件解析 第三章 FOR命令中的变量

一、 ~I- 删除任何引号(\"),扩展 %I 二、 %~fI- 将 %I 扩展到一个完全合格的路径名 三、 %~dI- 仅将 %I 扩展到一个驱动器号 四、 %~pI- 仅将 %I 扩展到一个路径 五、 %~nI- 仅将 %I 扩展到一个文件名 六、 %~xI- 仅将 %I 扩展到一个文件扩展名 七、 %~sI- 扩展的路径只含有短名 八、 %~aI- 将 %I 扩展到文件的文件属性 九、 %~tI- 将 %I 扩展到文件的日期/时间 十、 %~zI- 将 %I 扩展到文件的大小 十一、 %~$PATH:I 第四章 批处理中的变量 一、系统变量 二、自定义变量 第五章 set命令详解 一、用set命令设置自定义变量 二、用set命令进行简单计算 三、用set命令进行字符串处理 1、字符串替换 2、字符串截取 第六章 if命令讲解 第一种用法:IF [NOT] ERRORLEVEL number command

BAT(批处理)文件编写详细手册

BAT(批处理)文件编写详细手册 一、批处理文件简介 首先,批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句 (for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的 DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch 目录(例如C:/BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:/batch,你就可以在任意位置运行所有你编写的批处理程序。 简单的说,批处理的作用就是自动的连续执行多条命令。 二、批处理中常用命令: 1.echo命令:表示显示此命令后的字符。字符不需要使用引号。其中,%和^两个字 符不能显示。 2.Echo off命令:表示在此语句后所有运行的命令都不显示命令行本身。即关闭echo 回显功能。可以使用echo on打开。 3.@命令:它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能 影响当前行)。 4.call命令:调用另一个批处理文件(如果不用call而直接调用别的批处理文件, 那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。 5.pause命令:运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续。如果不想显示以上英文提示信息, 可以这样写:pause>null 6.rem命令:表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考 用的(相当于程序中的注释)。 7.::命令:与rem命令等效。 例1:用edit编辑a.bat文件,输入下列内容后存盘为c:/a.bat,执行该批处理 文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。 批处理文件的内容为: 命令注释: @echo off //不显示后续命令行及当前命令行

批处理命令大全(合集命令)

1 echo 和@ 回显控制命令 @ #关闭单行回显 echo off #从下一行开始关闭回显 @echo off #从本行开始关闭回显。一般批处理第一行都是这个 echo on #从下一行开始打开回显 echo #显示当前是echo off 状态还是echo on 状态 echo. #输出一个"回车换行",一般就是指空白行 echo hello world #输出hello world "关闭回显"是指运行批处理文件时,不显示文件里的每条命令,只显示运行结果 批处理开始和结束时,系统都会自动打开回显 2 errorlevel 程序返回码 echo %errorlevel% 每个命令运行结束,可以用这个命令行格式查看返回码 用于判断刚才的命令是否执行成功 默认值为0,一般命令执行出错会设errorlevel 为1 3 dir 显示目录中的文件和子目录列表 dir #显示当前目录中的文件和子目录 dir /a #显示当前目录中的文件和子目录,包括隐藏文件和系统文件 dir c: /a:d #显示C 盘当前目录中的目录 dir c:\ /a:-d #显示C 盘根目录中的文件 dir d:\mp3 /b/p #逐屏显示d:\mp3 目录里的文件,只显示文件名,不显示时间和大小dir *.exe /s 显示当前目录和子目录里所有的.exe文件 其中* 是通配符,代表所有的文件名,还一个通配符? 代表一个任意字母或汉字 如c*.* 代表以 c 开头的所有文件 ?.exe 代表所有文件名是一个字母的.exe文件 如果指定的目录或文件不存在,将返回errorlevel 为1 每个文件夹的dir 输出都会有2个子目录. 和.. . 代表当前目录 .. 代表当前目录的上级目录 dir . #显示当前目录中的文件和子目录 dir .. #显示当前目录的上级目录中的文件和子目录 其它参数可参考dir /? 4 cd 更改当前目录 cd mp3 #进入当前目录中的mp3 目录 cd .. #进入当前目录中的上级目录 cd\ #进入根目录

BAT(批处理)文件编写详细手册

BAT(批处理)文件编写详细手册

BAT(批处理)文件编写详细手册 一、批处理文件简介 首先,批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好 象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创 建和修改批处理文件。 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制 命令运行的流程,在批处理中也可以使用循 环语句 (for)来循环执行一条命令。当然, 批处理文件的编程能力与C语言等编程语句 比起来是十分有限的,也是十分不规范的。 批处理的程序语句就是一条条的 DOS命令 (包括内部命令和外部命令),而批处理的 能力主要取决于你所使用的命令。 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在

任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch 目录(例如 C:/BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:/batch,你就可以在任意位置运行所有你编写的批处理程序。 简单的说,批处理的作用就是自动的连续执行多条命令。 二、批处理中常用命令: 1.e cho命令:表示显示此命令后的字符。字符 不需要使用引号。其中,%和^两个字符不能显示。 2.E cho off命令:表示在此语句后所有运行的 命令都不显示命令行本身。即关闭echo回显功能。可以使用echo on打开。 3.@命令:它是加在每个命令行的最前面,表示 运行时不显示这一行的命令行(只能影响当前行)。 4.c all命令:调用另一个批处理文件(如果不 用call而直接调用别的批处理文件,那么执

相关文档
最新文档