DOS批处理教程讲课稿.doc
《DOS批处理教程讲课稿.doc》由会员分享,可在线阅读,更多相关《DOS批处理教程讲课稿.doc(94页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。DOS批处理教程-本教程主要引用伤脑筋版主的系列文章,同时参考引用英雄教程等其他批处理教程,本文将这些文章合并在一起,并适当修改,修改整理也是学习过程,力求深刻而又简单易懂,主要目的是方便自己以后查阅。本教程很长啊,需要一定的耐心才能看完,本人一边学习一边整理,断断续续的用了一个多月,弄懂了很多以前不明白的问题。如果连续不停的看完本教程而且理解得差不多,估计人也累趴下了,那时候相信你已经是一个DOS批处理高手。祝你早日学有所成!查阅方法:复制目录中的条目,搜索即可。目录第一章批处理基础第一节常用批处理内
2、部命令简介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、&、nul4、errorlevel程序返回码echo%errorlevel%每个命令运行结束,可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为0,一般命令执行出错会设errorlevel为15、
3、title设置cmd窗口的标题title新标题#可以看到cmd窗口的标题栏变了6、COLOR设置默认的控制台前景和背景颜色。COLORattrattr指定控制台输出的颜色属性颜色属性由两个十六进制数字指定-第一个为背景,第二个则为前景。每个数字可以为以下任何值之一:0=黑色8=灰色1=蓝色9=淡蓝色2=绿色A=淡绿色3=湖蓝色B=淡浅绿色4=红色C=淡红色5=紫色D=淡紫色6=黄色E=淡黄色7=白色F=亮白色如果没有给定任何参数,该命令会将颜色还原到CMD.EXE启动时的颜色。这个值来自当前控制台窗口、/T开关或DefaultColor注册表值。如果用相同的前景和背景颜色来执行COLOR命令,
4、COLOR命令会将ERRORLEVEL设置为1。例如:COLORfc在亮白色上产生亮红色7、mode配置系统设备配置系统设备。串行口:MODECOMm:BAUD=bPARITY=pDATA=dSTOP=sto=on|offxon=on|offodsr=on|offocts=on|offdtr=on|off|hsrts=on|off|hs|tgidsr=on|off设备状态:MODEdevice/STATUS打印重定向:MODELPTn:=COMm:选定代码页:MODECON:CPSELECT=yyy代码页状态:MODECON:CP/STATUS显示模式:MODECON:COLS=cLINES=
5、n击键率:MODECON:RATE=rDELAY=d例:modeconcols=113lines=15&color9f此命令设置DOS窗口大小:15行,113列8、GOTO和:GOTO会点编程的朋友就会知道这是跳转的意思。在批处理中允许以“:XXX”来构建一个标号,然后用GOTOXXX跳转到标号:XXX处,然后执行标号后的命令。例:if%1=gotonoparmsif%2=gotonoparms标签的名字可以随便起,但是最好是有意义的字符串啦,前加个冒号用来表示这个字符串是标签,goto命令就是根据这个冒号(:)来寻找下一步跳到到那里。最好有一些说明这样你别人看起来才会理解你的意图啊。例:ec
6、hooff:startset/avar+=1echo%var%if%var%leq3GOTOstartpause运行显示:12349、find在文件中搜索字符串。FIND/V/C/N/I/OFFLINEstringdrive:pathfilename./V显示所有未包含指定字符串的行。/C仅显示包含字符串的行数。/N显示行号。/I搜索字符串时忽略大小写。/OFFLINE不要跳过具有脱机属性集的文件。string指定要搜索的文字串,drive:pathfilename指定要搜索的文件。如果没有指定路径,FIND将搜索键入的或者由另一命令产生的文字。Find常和type命令结合使用Typedriv
7、e:pathfilename|findstringtmpfile#挑选包含string的行Typedrive:pathfilename|find/vstring#剔除文件中包含string的行Typedrive:pathfilename|find/c#显示文件行数以上用法将去除find命令自带的提示语(文件名提示)例:echooffecho111test.txtecho222test.txtfind111test.txtdeltest.txtpause运行显示如下:-TEST.TXT111请按任意键继续.例:echooffecho111test.txtecho222test.txttypete
8、st.txt|find111deltest.txtpause运行显示如下:111请按任意键继续.10、start命令批处理中调用外部程序的命令(该外部程序在新窗口中运行,批处理程序继续往下执行,不理会外部程序的运行状况),如果直接运行外部程序则必须等外部程序完成后才继续执行剩下的指令例:startexplorerd:调用图形界面打开D盘11、assoc和ftype文件关联assoc设置文件扩展名关联,关联到文件类型ftype设置文件类型关联,关联到执行程序和参数当你双击一个.txt文件时,windows并不是根据.txt直接判断用notepad.exe打开而是先判断.txt属于txtfile文
9、件类型再调用txtfile关联的命令行txtfile=%SystemRoot%system32NOTEPAD.EXE%1可以在文件夹选项文件类型里修改这2种关联assoc#显示所有文件扩展名关联assoc.txt#显示.txt代表的文件类型,结果显示.txt=txtfileassoc.doc#显示.doc代表的文件类型,结果显示.doc=Word.Document.8assoc.exe#显示.exe代表的文件类型,结果显示.exe=exefileftype#显示所有文件类型关联ftypeexefile#显示exefile类型关联的命令行,结果显示exefile=%1%*assoc.txt=Wo
10、rd.Document.8设置.txt为word类型的文档,可以看到.txt文件的图标都变了assoc.txt=txtfile恢复.txt的正确关联ftypeexefile=%1%*恢复exefile的正确关联如果该关联已经被破坏,可以运行,再输入这条命令12、pushd和popd切换当前目录echooffc:&cd&mdmp3#在C:建立mp3文件夹mdd:mp4#在D:建立mp4文件夹cd/dd:mp4#更改当前目录为d:mp4pushdc:mp3#保存当前目录,并切换当前目录为c:mp3popd#恢复当前目录为刚才保存的d:mp4一般用处不大,在当前目录名不确定时,会有点帮助。(dos编
11、程中很有用)13、CALLCALL命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后,再继续执行原来的批处理CALLdrive:pathfilenamebatch-parameters调用的其它批处理程序。filename参数必须具有.bat或.cmd扩展名。CALL:labelarguments调用本文件内命令段,相当于子程序。被调用的命令段以标签:label开头以命令goto:eof结尾。另外,批脚本文本参数参照(%0、%1、等等)已如下改变:批脚本里的%*指出所有的参数(如%1%2%3%4%5.)批参数(%n)的替代已被增强。您可以使用以下语法:(看不明白的直接运行后面的
12、例子)%1-删除引号(),扩充%1%f1-将%1扩充到一个完全合格的路径名%d1-仅将%1扩充到一个驱动器号%p1-仅将%1扩充到一个路径%n1-仅将%1扩充到一个文件名%x1-仅将%1扩充到一个文件扩展名%s1-扩充的路径指含有短名%a1-将%1扩充到文件属性%t1-将%1扩充到文件的日期/时间%z1-将%1扩充到文件的大小%$PATH:1-查找列在PATH环境变量的目录,并将%1扩充到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串可以组合修定符来取得多重结果:%dp1-只将%1扩展到驱动器号和路径%nx1-只将%1扩展到文件名和扩展名%dp$
13、PATH:1-在列在PATH环境变量中的目录里查找%1,并扩展到找到的第一个文件的驱动器号和路径。%ftza1-将%1扩展到类似DIR的输出行。在上面的例子中,%1和PATH可以被其他有效数值替换。%语法被一个有效参数号码终止。%修定符不能跟%*使用注意:参数扩充时不理会参数所代表的文件是否真实存在,均以当前目录进行扩展要理解上面的知识,下面的例子很关键。例:echooffEcho产生一个临时文件tmp.txtRem下行先保存当前目录,再将c:windows设为当前目录pushdc:windowsCall:subtmp.txtRem下行恢复前次的当前目录PopdCall:subtmp.txtp
14、auseDeltmp.txt:subEcho删除引号:%1Echo扩充到路径:%f1Echo扩充到一个驱动器号:%d1Echo扩充到一个路径:%p1Echo扩充到一个文件名:%n1Echo扩充到一个文件扩展名:%x1Echo扩充的路径指含有短名:%s1Echo扩充到文件属性:%a1Echo扩充到文件的日期/时间:%t1Echo扩充到文件的大小:%z1Echo扩展到驱动器号和路径:%dp1Echo扩展到文件名和扩展名:%nx1Echo扩展到类似DIR的输出行:%ftza1Echo.Goto:eof14、shift更改批处理文件中可替换参数的位置。SHIFT/n如果命令扩展名被启用,SHIFT命令
15、支持/n命令行开关;该命令行开关告诉命令从第n个参数开始移位;n介于零和八之间。例如:SHIFT/2会将%3移位到%2,将%4移位到%3,等等;并且不影响%0和%1。15、IFIF条件判断语句,语法格式如下:IFNOTERRORLEVELnumbercommandIFNOTstring1=string2commandIFNOTEXISTfilenamecommand下面逐一介绍,更详细的分析请看后面章节。(1)IFNOTERRORLEVELnumbercommandIFERRORLEVEL这个句子必须放在某一个命令的后面,执行命令后由IFERRORLEVEL来判断命令的返回值。Number的数
16、字取值范围0255,判断时值的排列顺序应该由大到小。返回的值大于等于指定的值时,条件成立例:echooffdirc:rem退出代码为=1就跳至标题1处执行,=0就跳至标题0处执行IFERRORLEVEL1goto1IFERRORLEVEL0goto0Rem上面的两行不可交换位置,否则失败了也显示成功。:0echo命令执行成功!Rem程序执行完毕跳至标题exit处退出gotoexit:1echo命令执行失败!Rem程序执行完毕跳至标题exit处退出gotoexit:exitpause运行显示:命令执行成功!(2)IFNOTstring1=string2commandstring1和string2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DOS 批处理 教程 讲课
限制150内