Windows批处理高级教程精选合编
批处理高级教程
第一章批处理基础第一节常用批处理内部命令简介1、REM 和 ::2、ECHO 和 @3、PAUSE4、ERRORLEVEL5、TITLE6、COLOR7、mode 配置系统设备8、GOTO 和 :9、FIND10、START11、assoc 和 ftype12、pushd 和 popd13、CALL14、shift15、IF16、setlocal 与变量延迟第二节常用特殊符号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、更正了所有的错别字,适当排版,增加条理性。
Windows批处理教程
1 前言1.1注意除了空格以外,在路径或文件名中含有&()[]{}^=;!'+,`~ 特殊字符时也需要用双引号引用起来,以便机器能够正确地识别。
1.2 了解与使用基本DOS命令Dir 列文件名cd 改变当前目录tiren 改变文件名copy 拷贝文件del 删除文件md 建立子目录rd 删除目录deltree 删除目录树format 格式化磁盘edit 文本编辑type 显示文件内容mem 查看内存状况help 显示帮助提示cls 清屏move 移动文件,改目录名more 分屏显示xcopy 拷贝目录和文件/p 每显示一个屏幕的内容后暂停一下以便查看。
/? 得到命令的完整说明。
help cmd 得到命令的完整说明。
d: 到驱动器D盘下cd\ 返回到该驱动器的最顶级目录。
Example:copy a.txt "..\test my folder\c.bmp":复制a.txt 到文件并改名。
rd test "test my folder"rd test "test my folder" /s 强制删除2 显示篇2.1 echo @ 和pauseecho off 以后的所有命令本身都不再显示出来;@只是将当前那一行的命令不显示出来。
pause ,等同于将程序挂起,在按下任意键后才继续。
2.2 > 和>>:重定向和追加>nul可以让该命令的输出不显示。
2.3 title 和remTitle 改变当前命令提示符的标题名称。
Rem 注释。
:: 同rem。
提示:rem 与:: 的区别在于,rem 也是一种命令,在echo on 的情况下会被显示出来,而:: 却不会。
2.4 prompt :"提示符"3 赋值调用参数3.1 赋值3.1.1 给变量赋予一个文字字符串的值说到赋值,就得先弄懂set 这条命令。
windows批处理命令详解及脚本实例
批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
第一部分:批处理内部命令1、REMREM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。
例:REM 你现在看到的就是注解,这一句将不会被执行。
在以后的例子中解释的内容都REM 会放在REM后面。
请大家注意。
2、ECHOECHO 是一个回显命令主要参数有OFF和ON,一般用ECHO message来显示一个特定的消息。
例:Echo offRem 以上代表关闭回显即不显示所执行的命令Echo 这个就是消息。
Rem 以上代表显示"这就是消息"这列字符执行结果:C:\>ECHO.BAT这个就是消息。
3、GOTOGOTO 即为跳转的意思。
在批处理中允许以":X"来构建一个标号然后用GOTO :标号直接来执行标号后的命令。
例:LABELREM 上面就是名为LABEL的标号。
1DIR D:\GOTO LABELREM 以上程序跳转标号LABEL处继续执行。
4、CALLCALL 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。
例:批处理2.BAT内容如下:ECHO 这就是2的内容批处理1.BAT内容如下:ECHO 这是1的内容CALL 2.BATECHO 1和2的内容全部显示完成执行结果如下:C:\>1.BAT这是1的内容这就是2的内容1和2的内容全部显示完成5、PAUSEPAUSE 停止系统命令的执行并显示下面的内容。
例:C:\> PAUSE请按任意键继续 . . .2IF 条件判断语句,语法格式如下:IF [NOT] ERRORLEVEL number commandIF [NOT] string1==string2 commandIF [NOT] EXIST filename command说明:[NOT] 将返回的结果取反值即"如果没有"的意思。
批处理教程(完全版带目录)
前言这是一个十分经典的批处理教程,作者讲解的很详细,也很易懂,在这里感谢作者这是一篇技术教程,真心诚意会用很简单的文字表达清楚自己的意思,只要你识字就能看懂,就能学到知识。
写这篇教程的目的,是让每一个看过这些文字的朋友记住一句话:如果爱可以让事情变的更简单,那么就让它简单吧!看这篇教程的方法,就是慢!慢慢的,如同品一个女人、一杯茗茶,你会发现很多以前就在眼前的东西突然变的很遥远,而有些很遥远的东西却又突然回到了眼前。
.先概述一下批处理是个什么东东。
批处理的定义,至今我也没能给出一个合适的----众多高手们也都没给出----反正我不知道----看了我也不一定信服----我是个菜鸟,当然就更不用说了;但我想总结出一个"比较合适的",而且我也相信自己可以把它解释的很清楚,让更多的菜鸟都知道这是个什么东东,你用这个东东可以干什么事情。
或许你会因为这篇文章而"无条件爱上批处理",那么我的目的就达到了----我就是要让你爱上它,我就这么拽,你能怎么着??真的,爱有时候就这么拽,就是这么没理由,就是这么不要脸!真的!按照我的理解,批处理的本质,是一堆DOS命令按一定顺序排列而形成的集合。
OK,never claver and get to business(闲话少说言归正传)。
批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。
它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。
批处理有一个很鲜明的特点:使用方便、灵活,功能强大,自动化程度高。
我不想让自己写的教程枯燥无味,因为牵缠到代码(批处理的内容算是代码吧?)的问题本来就是枯燥的,很少有人能面对满屏幕的代码而静下心来。
所以我会用很多简单实用的例子让读这篇教程的朋友去体会批处理的那四射的魅力,感受它那古灵精怪的性格,不知不觉中爱上批处理(晕,怎么又是爱?到底批处理和爱有什么关系?答案:没有!)。
WINDOWS批处理
批处理详细教程(一)作者:佚名文章来源:本站原创点击数:11912 更新时间:2005-10-21前言最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古语云:“授人以鱼,不如授人以渔。
”因为网上好像并没有一个比较完整的教材,所以抽一点时间写了这片<<简明批处理教程> >给新手朋友们.也献给所有为实现网络的自由与共享而努力的朋友们.批处理文件是无格式的文本文件,它包含一条或多条命令。
它的文件扩展名为.bat 或.cmd。
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。
使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。
当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。
下面就开始我们批处理学习之旅吧。
一.简单批处理内部命令简介1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
语法echo [{on|off}] [message]Sample:@echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:@echo off@echo Now initializing the program,please wait a minite...@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。
批处理高级教程
第一章批处理基础第一节常用批处理内部命令简介1、REM 和 ::2、ECHO 和 @3、PAUSE4、ERRORLEVEL5、TITLE6、COLOR7、mode 配置系统设备8、GOTO 和 :9、FIND10、START11、assoc 和 ftype12、pushd 和 popd13、CALL14、shift15、IF16、setlocal 与变量延迟第二节常用特殊符号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、更正了所有的错别字,适当排版,增加条理性。
CMD命令行高级教程精选合编
lcd d:\download #本地目录
mget * #下载tmp1目录下的所有文件
bye #退出ftp
六、用7-ZIP实现命令行压缩和解压功能
语法格式:(详细情况见7-zip帮助文件,看得头晕可以跳过,用到再学)
7z <command> [<switch>...] <base_archive_name> [<arguments>...]
echo.
echo 3.清除所有多余的自启动项目,修复系统错误
echo.
echo 4.清理系统垃圾,提高启动速度
echo.
echo Q.退出
echo.
echo.
:cho
set choice=
set /p choice= 请选择:
x: eXtract with full paths用文件的完整路径解压至当前目录或指定目录
x命令可用参数:
-ai (Include archives)
-an (Disable parsing of archive_name)
-ao (Overwrite mode)
-ax (Exclude archives)
echo 数据求和结果:%sum%
pause
:sub
rem Байду номын сангаас数1为返回变量名称
set /a %1=%1+%2
shift /2
if not "%2"=="" goto sub
goto :eof
运行结果:65
在win98系统中,不支持上面这种标号调用,须将子程序单独保存为一个批处理程序,然后调用。
CMD命令行高级教程精选合编---第二章 DOS循环:for命令详解
CMD命令行高级教程精选合编---第二章DOS循环:for命令详解第二章DOS循环:for命令详解讲FOR之前呢,咋先告诉各位新手朋友,如果你有什么命令不懂,直接在CMD下面输入:name /? 这样的格式来看系统给出的帮助文件,比如for /? 就会把FOR 命令的帮助全部显示出来!当然许多菜鸟都看不懂....所以才会有那么多批处理文章!!!!俺也照顾菜鸟,把FOR命令用我自己的方式说明下!正式开始:一、基本格式FOR %%variable IN (set) DO command [command-parameters]%%variable 指定一个单一字母表示可替换的参数。
(set) 指定一个或一组文件。
可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters为特定命令指定参数或命令行开关。
参数:FOR有4个参数/d /l /r /f 他们的作用我在下面用例子解释现在开始讲每个参数的意思二、参数/dFOR /D %%variable IN (set) DO command [command-parameters]如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。
如果Set (也就是我上面写的"相关文件或命令") 包含通配符(* 和?),将对与Set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的Command。
这个参数主要用于目录搜索,不会搜索文件,看这样的例子@echo offfor /d %%i in (c:\*) do echo %%ipause运行会把C盘根目录下的全部目录名字打印出来,而文件名字一个也不显示!在来一个,比如我们要把当前路径下文件夹的名字只有1-3个字母的打出来@echo offfor /d %%i in (???) do echo %%ipause这样的话如果你当前目录下有目录名字只有1-3个字母的,就会显示出来,没有就不显示了这里解释下*号和?号的作用,*号表示任意N个字符,而?号只表示任意一个字符知道作用了,给大家个思考题目!@echo offfor /d %%i in (window?) do echo %%ipause保存到C盘下执行,会显示什么呢?自己看吧! 显示:windows/D参数只能显示当前目录下的目录名字,这个大家要注意!三、参数/RFOR /R [[drive:]path] %%variable IN (set) DO command [command-parameters]检查以[drive:]path 为根的目录树,指向每个目录中的FOR 语句。
批处理命令及教程
批处理命令及教程批处理⽂件(batch file)包含⼀系列 DOS命令,通常⽤于⾃动执⾏⼀些重复性任务。
⽤户只需双击批处理⽂件便可执⾏任务,⽽⽆需重复输⼊相同指令。
在Windows中善⽤批处理可以简化很多重复⼯作什么是批处理?批处理(Batch),也称批处理脚本。
批处理即对某对象进⾏批量的处理。
批处理⽂件的扩展名为bat批处理是⼀种简化的脚本语⾔,它应⽤于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释器(通常是或者CMD.EXE)解释运⾏批处理类似于Unix中的Shell脚本。
批处理⽂件具有.bat或者.cmd的扩展名,其最简单的例⼦,是逐⾏书写在命令⾏中会⽤到的各种命令。
更复杂的情况,需要使⽤if,for,goto等命令控制程序的运⾏过程,如同C,Basic等中⾼级语⾔⼀样.创建批处理⽂件,或称为批处理程序,是由⼀条条的DOS命令组成的普通⽂本⽂件,可以⽤记事本直接编辑或⽤DOS命令创建,也可以⽤DOS下的⽂本编辑器Edit.exe来编辑。
在“命令提⽰”下键⼊批处理⽂件的名称,或者双击该批处理⽂件,系统就会调⽤Cmd.exe运⾏该批处理程序⼀般情况下,每条命令占据⼀⾏当然也可以将多条命令⽤特定符号(如:&、&&、|、||等)分隔后写⼊同⼀⾏中还有的情况就是像if、for等较⾼级的命令则要占据⼏⾏甚⾄⼏⼗⼏百⾏的空间。
系统在解释运⾏批处理程序时,⾸先扫描整个批处理程序,然后从第⼀⾏代码开始向下逐句执⾏所有的命令,直⾄程序结尾或遇见exit命令或出错意外退出常⽤命令echorempausecallstartgotoset符号回显屏蔽 @重定向1 >与>>重定向2 <管道符号 |转义符 ^逻辑命令符包括:&、&&、||常⽤DOS命令⽂件夹管理:cd 显⽰当前⽬录名或改变当前⽬录。
md 创建⽬录。
经典高级批处理完整教程
经典高级批处理完整教程一.简单批处理内部命令简介1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
语法echo [{on|off}] [message]Sample:@echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
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 noparmsif {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
)@Rem check parameters if null show usage:noparmsecho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。
最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Windows批处理高级教程精选合编
Windows批处理高级教程精选合编目录第一章批处理基础第一节常用批处理内部命令简介1、REM 和 ::2、ECHO 和 @3、PAUSE4、ERRORLEVEL5、TITLE6、COLOR7、mode 配置系统设备8、GOTO 和 :9、FIND10、START11、assoc 和 ftype12、pushd 和 popd13、CALL14、shift15、IF16、setlocal 与变量延迟第二节常用特殊符号1、@ 命令行回显屏蔽符2、% 批处理变量引导符3、> 重定向符4、>> 重定向符5、<、>&、<& 重定向符6、| 命令管道符7、^ 转义字符8、& 组合命令9、&& 组合命令10、|| 组合命令11、"" 字符串界定符12、, 逗号13、; 分号14、() 括号15、! 感叹号第二章 FOR命令详解一、参数 /d二、参数 /R三、参数 /L四、参数 /F1第三章 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程序八、将批处理转化为可执行文件九、时间延迟十、模拟进度条第一章批处理基础第一节常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD。
高级批处理教程
高级批处理教程 (1)延迟变量详解(通俗解释) (4)变量延迟详解 (7)妙用粘滞键打造入侵Windows Vista系统超酷后门 (11)CMD 修改注册表 (14)设置CMD快捷键 (15)高级批处理教程默认分类2008-08-15 09:44:57 阅读5 评论0 字号:大中小订阅后缀是bat的文件就是批处理文件,是一种文本文件。
简单的说,它的作用就是自动的连续执行多条命令,批处理文件的内容就是一条一条的命令。
那它有什么用呢?比如,在启动wps软件时,每次都必须执行C:\>cd wpsC:\WPS>spdosC:\WPS>pyC:\WPS>wbxC:\WPS>wps如果每次用WPS之前都这样执行一次,您是不是觉得很麻烦呢?如果有一个方法,只需一个文件,就会自动执行刚才的所有命令,您想不想学呢?当您看完此节,自己编写的第一个批处理文件顺利执行时,您一定会大吃一惊的。
此外电脑每次启动时都会寻找autoexec.bat这条批处理文件,从而可执行一些每次开机都要执行的命令,如设置路径path、加载鼠标驱动mouse、磁盘加速smartdrv等,可以使您的电脑真正自动化。
echo、@、call、pause、rem 是批处理文件最常用的几个命令,我们就从他们开始学起。
echo 表示显示此命令后的字符echo off 表示在此语句后所有运行的命令都不显示命令行本身@ 与echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。
call 调用另一条批处理文件(如果直接调用别的批处理文件,执行完那条文件后将无法执行当前文件后续命令)pause 运行此句会暂停,显示Press any key to continue... 等待用户按任意键后继续rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的例:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入a.txt中,启动UCDOS,进入WPS等功能。
批处理完整教程.
C:>ECHO Y|DEL A :*.*
7)建立新文件或增加文件内容
格式:ECHO文件内容>文件名
ECHO文件内容>>文件名
例如:
C:>ECHO @ECHO OFF>AUTOEXEC.BAT建立自动批处理文件
C:>ECHO C:\CPAV\BOOTSAFE>>AUTOEXEC.BAT向自动批处理文件中追加内容
如果没有给定任何参数,该命令会将颜色还原到CMD.EXE启动时
的颜色。这个值来自当前控制台窗口、/T开关或
DefaultColor注册表值。
如果用相同的前景和背景颜色来执行COLOR命令,COLOR命令
会将ERRORLEVEL设置为1。
例如: "COLOR fc"在亮白色上产生亮红色
7、mode配置系统设备
5)输出空行,即相当于输入一个回车
格式:ECHO.
值得注意的是命令行中的“.”要紧跟在ECHO后面中间不能有空格,否则“.”将被当作提示信息输出到屏幕。另外“.”可以用,:;”/[\]+等任一符号替代。
命令ECHO.输出的回车,经DOS管道转向可以作为其它命令的输入,比如echo.|time即相当于在TIME命令执行后给出一个回车。所以执行时系统会在显示当前时间后,自动返回到DOS提示符状态
@echo off
echo "欢迎来到非常BAT!"
pause
把上面的3条命令保存为文件test.bat或者test.cmd然后执行,
他就会在屏幕上显示以下二行话:
欢迎来到非常BAT!
请按任意键继续. . .
这就是一个简单批处理文件了,这个批处理文件一共就用了2条命令"echo"和"pause"还有一个特殊符号"@"
Windows批处理程序 学习
Windows批处理程序说明:本文档是平时工作的积累,正在完善和补充,这里基本采用80/20法则,大部分内容是工作中经常用到的,并且可以解决大部分的问题。
由于里面夹杂各种参考资料以及自己对这些资料的理解,其间可能存在许多不全面的,甚至错误的地方。
如果以后有需要,再补充外部程序命令部分。
作者:Garfield发布日期:20110221目录第一章批处理介绍 (5)1概述 (5)2程序规范 (5)第二章批处理初级 (6)1简单命令 (6)1.1 ECHO (6)1.2 REM (6)1.3 PAUSE (6)1.4 TITLE (6)1.5 COLOR (7)1.6 GOTO (7)1.7 TYPE (7)1.8 RD (7)1.9 REN (8)2复杂命令 (8)2.1 CD (8)2.1.1同一分区切换 (8)2.1.2不同分区的切换 (9)2.1.3得到当前路径信息 (9)2.2 ATTRIB (9)2.2.1语法 (9)2.2.2用法 (9)2.3 DEL (10)2.3.1语法 (10)2.3.2用法 (10)2.4 COPY (11)2.4.1语法 (11)2.4.2复制单个文件 (11)2.4.3复制多个文件 (11)2.4.4合并文件 (11)2.5 XCOPY (12)2.5.1语法 (12)2.5.2用法 (13)2.6 MD (13)2.6.1语法 (13)2.6.2用法 (13)2.7 MOVE (13)2.7.1语法 (13)2.7.2用法 (14)2.8 FIND (14)2.8.1语法 (14)2.8.2用法 (15)2.9 FINDSTR (15)2.9.2基本用法 (16)2.9.3通配符和重复符规则 (16)2.9.4行首、行尾符规则 (17)2.9.5字符集规则 (17)2.9.6减法规则 (17)2.9.7单词前缀后缀定位规则 (18)2.9.8转义符 (18)3常用符号 (18)3.1重定向符 (18)3.1.1 > (18)3.1.2 >> (18)3.1.3 < (19)3.1.4 >& (19)3.1.5 <& (19)3.2管道命令符 (19)3.3组合命令 (19)3.3.1 & (19)3.3.2 && (20)3.3.3 || (20)3.4变量引导符% (20)3.5 @ (20)3.6其他符号 (21)3.6.1转义字符^ (21)3.6.2界定符“” (21)3.6.3逗号, (22)3.6.4分号; (22)3.6.5括号() (22)3.6.6感叹号! (22)3.6.7文件通配符 (22)3.6.8参数开关引导符/ (23)3.6.9 批处理标签引导符: (23)3.6.10程序注释符:: (23)3.6.11参数界定符 (23)3.6.12命令行结束符 (23)第三章批处理高级 (24)1 IF (24)1.1 IF语法 (24)1.1.1 IF基本语法 (24)1.1.2带ELSE的IF语法 (24)1.2 IF用法 (24)1.2.1第一种用法 (24)1.2.2第二种用法 (25)1.2.3第三种用法 (25)1.2.5第五种用法 (26)2 SET (26)2.1用SET命令定义变量 (26)2.2用SET命令进行计算 (27)2.3用SET命令处理字符串 (27)2.3.1字符串替换 (27)2.3.2字符串截取 (28)3 FOR (29)3.1基本语法 (29)3.2变量 (30)3.3参数/D (31)3.4参数/R (32)3.5参数/L (32)3.6参数/F (32)3.6.1基本用法 (33)3.6.2切分字符串 (33)3.6.3定点提取 (34)3.6.4跳过无关内容 (35)3.6.5忽略以指定字符打头的行 (35)3.6.6使用usebackq (35)3.6.7该使用for /f 的哪种句式? (35)4变量 (36)4.1系统变量 (36)4.1.1普通系统变量 (36)4.1.2特殊系统变量 (37)4.2延迟变量 (37)4.2.1什么是延迟环境变量扩展 (37)4.2.2变量延迟详解 (38)5 Windwos网络命令 (40)5.1 NET USE (40)第四章外部程序命令 (42)1 WINRAR (42)2 FTP (42)3终止子进程 (42)1概述批处理程序是将一系列命令按一定的顺序组成一个可执行的文本文件,其扩展名为BAT 或者CMD,这些命令统称批处理命令。
DOS批处理高级教程精选合编_整理
DOS批处理高级教程精选合编_整理1.变量和参数在DOS批处理中,您可以使用变量来存储和操作数据。
使用set命令可以定义变量,例如:```set variable=value```使用%variable%的形式来引用变量,例如:```echo %variable%```除了自定义的变量,还有一些特殊变量可用于批处理脚本。
例如,%0表示脚本文件的名称,%1-%9表示传递给脚本的参数。
2.循环和条件语句在DOS批处理中,您可以使用for循环和if条件语句来实现重复执行和条件判断。
例如,以下是一个使用for循环打印文件夹中所有文件的示例:```for %%i in (*.txt) doecho %%i```以下是一个使用if条件语句判断文件是否存在的示例:```if exist filenameecho File existselseecho File does not exist```3.执行外部命令和程序```call script.bat```以下是一个使用start命令打开一个程序的示例:```start program.exe```您还可以使用其他命令来执行文件操作、网络操作等。
4.错误处理和日志记录在DOS批处理中,您可以使用关键字2>nul将错误消息重定向到空设备,以忽略错误。
例如:``````还可以使用>>将输出追加到日志文件中,以便进行日志记录。
例如:``````5.用户交互```set /p name=Enter your name:```点击用户输入后,变量name将包含输入的值。
以上是DOS批处理的一些高级技巧和常用操作。
希望这些信息对您有所帮助,并能在您的DOS批处理脚本中发挥作用。
当然,DOS批处理具有广泛的功能和用途,您可以根据自己的需求进一步探索和学习。
windows批处理命令详解及脚本实例[精选]doc
批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
第一部分:批处理内部命令1、REMREM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。
例:REM 你现在看到的就是注解,这一句将不会被执行。
在以后的例子中解释的内容都REM 会放在REM后面。
请大家注意。
2、ECHOECHO 是一个回显命令主要参数有OFF和ON,一般用ECHO message来显示一个特定的消息。
例:Echo offRem 以上代表关闭回显即不显示所执行的命令Echo 这个就是消息。
Rem 以上代表显示"这就是消息"这列字符执行结果:C:\>ECHO.BAT这个就是消息。
3、GOTOGOTO 即为跳转的意思。
在批处理中允许以":XXX"来构建一个标号然后用GOTO :标号直接来执行标号后的命令。
例:LABELREM 上面就是名为LABEL的标号。
DIR C:\DIR D:\GOTO LABELREM 以上程序跳转标号LABEL处继续执行。
4、CALLCALL 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。
例:批处理2.BAT内容如下:ECHO 这就是2的内容批处理1.BAT内容如下:ECHO 这是1的内容CALL 2.BATECHO 1和2的内容全部显示完成执行结果如下:C:\>1.BAT这是1的内容这就是2的内容1和2的内容全部显示完成5、PAUSEPAUSE 停止系统命令的执行并显示下面的内容。
例:C:\> PAUSE请按任意键继续. . .6、IFIF 条件判断语句,语法格式如下:IF [NOT] ERRORLEVEL number commandIF [NOT] string1==string2 commandIF [NOT] EXIST filename command说明:[NOT] 将返回的结果取反值即"如果没有"的意思。
WINDOWS批处理命令详解教程
WINDOWS批处理命令详解教程WINDOWS批处理命令详解教程这篇文章的内容如下:最近好多猜测弱口令的病毒在网上流行,比如前段时间闹得很厉害的Worm.Dvldr 蠕虫就是一个典型。
这些病毒有个共同点就是利用批处理来进行ipc$连接,从而来猜测管理员的口令达到控制服务器的目的。
病毒由几个文件和几个复杂的批处理组成。
批处理算不上真正意义上的编程,但是它的一些思想和编程比较近似。
通过在网上和一些初学的朋友交流,发现他们对于批处理很感兴趣,多多少少了解一些命令的用法,但缺乏比较系统的了解,所以特意写下这篇教程,好让感兴趣的朋友对批处理有个整体的认识,并能通过该教程举一反三,写出自己的批处理。
该教程一共分为4大部分,第一部分是批处理的专用命令,第二部分是特殊的符号与批处理,第三部分是批处理与变量,第四部分是完整案例。
因为教程比较长,所有在杂志上我们将分为两次连载,本期首先刊登一、二两部分,敬请读者注意。
第一部分:批处理的专用命令批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
这些命令统称批处理命令,下面我就来给大家介绍一下批处理的命令。
1、REMREM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。
例:REM 你现在看到的就是注解,这一句将不会被执行。
在以后的例子中解释的内容都REM 会放在REM 后面。
请大家注意。
WINDOWS批处理命令详解教程这篇文章的内容如下:2、ECHOECHO 是一个回显命令主要参数有OFF和ON,一般用ECHO message来显示一个特定的消息。
例:Echo offRem 以上代表关闭回显即不显示所执行的命令Echo 这个就是消息。
Rem 以上代表显示“这就是消息”这列字符执行结果:C:\\>ECHO.BAT这个就是消息。
3、GOTOGOTO 即为跳转的意思。
在批处理中允许以“:XXX”来构建一个标号然后用GOTO :标号直接来执行标号后的命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
W i n d o w s批处理高级教程精选合编---菜鸟宝典中国DOS联盟(cdw12366整理)前言本教程主要引用伤脑筋版主的系列文章,同时参考引用英雄教程等其他批处理教程,本文将这些文章合并在一起,并适当修改,修改整理也是学习过程,力求深刻而又简单易懂,主要目的是方便自己以后查阅。
本教程很长啊,需要一定的耐心才能看完,本人一边学习一边整理,断断续续的用了一个多月,弄懂了很多以前不明白的问题。
如果连续不停的看完本教程而且理解得差不多,估计人也累趴下了。
查阅方法:复制目录中的条目,搜索即可。
目录第一章批处理基础第一节常用批处理内部命令简介1、REM 和::2、ECHO 和@3、PAUSE4、ERRORLEVEL5、TITLE6、COLOR7、mode 配置系统设备8、GOTO 和:9、FIND10、START11、assoc 和ftype12、pushd 和popd13、CALL14、shift15、IF16、setlocal 与变量延迟第二节常用特殊符号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、更正了所有的错别字,适当排版,增加条理性。
2、运行改善所有例子,并纠正了一些语法错误。
3、补充了一些不完全的地方。
4、第一章参考了网上许多教程汇编而成。
5、20080229补充了变量延迟的问题。
6、20080305修改了参数usebackq的说明6、不断学习中,不断更新中。
====================================================== ================第一章批处理基础第一节常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD。
这些命令统称批处理命令。
小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程。
了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为文件test.bat或者test.cmd然后执行,他就会在屏幕上显示以下二行话:欢迎来到非常BAT!请按任意键继续. . .这就是一个简单批处理文件了,这个批处理文件一共就用了2条命令"echo" 和"pause" 还有一个特殊符号"@"从上面这个简单的批处理中,我们可以发现其实批处理就是运用一些含有特殊意义的符号和一些完成指定功能的命令组合而成,那么在批处理中有多少这样的特殊符号和功能命令呢?我们现在就来仔细了解一下一些最常用的!(以下内容来源网络,请各位仔细阅读,好进入下节的实例说明)====================================================== 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息)1、REM 和::2、ECHO 和@3、PAUSE4、ERRORLEVEL5、TITLE6、COLOR7、mode 配置系统设备8、GOTO 和:9、FIND10、START11、assoc 和ftype12、pushd 和popd13、CALL14、shift15、IF16、setlocal 与变量延迟介绍命令1、REM 和::REM为注释命令,一般用来给程序加上注解,该命令后的内容不被执行,但能回显。
其次, :: 也可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意:第一, 任何以冒号:开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容。
有效标号:冒号后紧跟一个以字母数字开头的字符串,goto语句可以识别。
无效标号:冒号后紧跟一个非字母数字的一个特殊符号,goto无法识别的标号,可以起到注释作用,所以:: 常被用作注释符号,其实:+ 也可起注释作用。
第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on打开命令行回显状态, 因为命令解释器不认为他是一个有效的命令行, 就此点来看, rem 在某些场合下将比:: 更为适用; 另外, rem 可以用于config.sys 文件中。
2、ECHO 和@打开回显或关闭回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
@字符放在命令前将关闭该命令回显,无论此时echo是否为打开状态。
语法:echo [{ on|off }] [message]echo. #此用法将显示一空行,相当于回车,非常有用。
执行echo off将关闭回显,它后面的所有命令都不显示命令本身,只显示执行后的结果,除非执行echo on命令。
执行@echo off不但关闭以后命令的回显,连echo off命令本身也不显示了。
通常以@echo off作为批处理程序的首行。
一般用ECHO MESSAGE来显示一个特定的消息。
例:@Echo offEcho helloPause运行显示:hello3、PAUSEPAUSE,玩游戏的人都知道,暂停的意思在这里就是停止系统命令的执行并显示下面的内容。
例:PAUSE运行显示:请按任意键继续. . .要显示其他提示语,可以这样用:Echo 其他提示语& pause > nul4、errorlevel程序返回码echo %errorlevel%每个命令运行结束,可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为0,一般命令执行出错会设errorlevel 为15、title设置cmd窗口的标题title 新标题 #可以看到cmd窗口的标题栏变了6、COLOR设置默认的控制台前景和背景颜色。
COLOR [attr]attr 指定控制台输出的颜色属性颜色属性由两个十六进制数字指定-- 第一个为背景,第二个则为前景。
每个数字可以为以下任何值之一:0 = 黑色8 = 灰色1 = 蓝色9 = 淡蓝色2 = 绿色 A = 淡绿色3 = 湖蓝色 B = 淡浅绿色4 = 红色 C = 淡红色5 = 紫色 D = 淡紫色6 = 黄色 E = 淡黄色7 = 白色 F = 亮白色如果没有给定任何参数,该命令会将颜色还原到CMD.EXE 启动时的颜色。
这个值来自当前控制台窗口、/T 开关或DefaultColor 注册表值。
如果用相同的前景和背景颜色来执行COLOR 命令,COLOR 命令会将ERRORLEVEL 设置为1。
例如: "COLOR fc" 在亮白色上产生亮红色7、mode 配置系统设备配置系统设备。
串行口: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s][to=on|off] [xon=on|off] [odsr=on|off][octs=on|off] [dtr=on|off|hs][rts=on|off|hs|tg] [idsr=on|off]设备状态: MODE [device] [/STATUS]打印重定向:MODE LPTn[:]=COMm[:]选定代码页:MODE CON[:] CP SELECT=yyy代码页状态:MODE CON[:] CP [/STATUS]显示模式: MODE CON[:] [COLS=c] [LINES=n]击键率:MODE CON[:] [RATE=r DELAY=d]例:mode con cols=113 lines=15 & color 9f此命令设置DOS窗口大小:15行,113列8、GOTO 和:GOTO会点编程的朋友就会知道这是跳转的意思。
在批处理中允许以“:XXX”来构建一个标号,然后用GOTO XXX跳转到标号:XXX处,然后执行标号后的命令。
例:if {%1}=={} goto noparmsif "%2"=="" goto noparms标签的名字可以随便起,但是最好是有意义的字符串啦,前加个冒号用来表示这个字符串是标签,goto命令就是根据这个冒号(:)来寻找下一步跳到到那里。
最好有一些说明这样你别人看起来才会理解你的意图啊。
例:@echo off:startset /a var+=1echo %var%if %var% leq 3 GOTO startpause运行显示:12349、find在文件中搜索字符串。
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]]/V 显示所有未包含指定字符串的行。