批处理文件内部命令

合集下载

终稿-批处理命令-自我鉴定-心理-成绩表-疱疹

终稿-批处理命令-自我鉴定-心理-成绩表-疱疹

批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BA T。

第一部分:批处理内部命令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] 将返回的结果取反值即"如果没有"的意思。

批处理命令大全及使用方法

批处理命令大全及使用方法

批处理命令大全及使用方法批处理命令大全.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语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。

批处理文件BAT的命令及使用

批处理文件BAT的命令及使用

批处理文件BAT的命令及使用1. echoecho命令用于在命令行窗口上显示文本或变量的内容。

用法:echo <文本>2. setset命令用于设置或显示环境变量。

用法:set <变量名称>=<值>3. ifif命令用于执行条件判断,根据条件的满足与否执行相应的操作。

用法:- 单个条件:if <条件> <命令>- 多个条件:if <条件1> <命令1> else if <条件2> <命令2> else <命令3>4. forfor命令用于循环操作,并可以对文件、文件夹、字符串等进行遍历操作。

用法:- 遍历文件/文件夹:for /r <路径> %变量 in (<通配符>) do <命令>- 数字循环:for /l %变量 in (<起始值>, <步长>, <结束值>) do<命令>5. callcall命令用于调用另一个批处理文件,并在调用完成后返回当前文件。

用法:call <批处理文件路径>6. startstart命令用于启动一个新的命令行窗口或程序,并可指定窗口标题、运行目录等选项。

用法:start <选项> <程序或文件路径>7. pausepause命令用于暂停批处理的执行,直到用户按下任意键才继续执行下一条命令。

用法:pause8. cdcd命令用于更改当前目录。

用法:cd <目录路径>9. mdmd命令用于创建一个新的目录。

用法:md <目录路径>10. deldel命令用于删除文件或文件夹。

用法:- 删除文件:del <文件路径>- 删除文件夹:del /s <文件夹路径>11. copycopy命令用于复制文件、文件夹或目录。

windows批处理命令教程

windows批处理命令教程

windows批处理命令教程类型:转载批处理文件是无格式的文本文件,它包含一条或多条命令。

它的文件扩展名为 .bat 或 .cmd。

在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们批处理文件是无格式的文本文件,它包含一条或多条命令。

它的文件扩展名为 .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是一样的。

)3.goto 命令指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。

什么是批处理文件

什么是批处理文件
cd ucdos 进入ucdos目录
wps 运行wps
批处理文件的参数
批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。
dir c:\*.* >a.txt 将c盘文件列表写入a.txt
call c:\ucdos\ucdos.bat 调用ucdos
echo 你好 显示"你好"
pause 暂停,等待按键继续
rem 准备运行wps 注释:准备运行wps
pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。
==== willsort 编注 ====================================================
命令。
message
指定让MS-DOS在屏幕上显示的正文。
----------------------------------------------------------------------------
CALL
从一个批处理程序中调用另一个批处理程序,而不会引起第一个批处理的中止。
@echo off
type %1
type %2
那么运行C:\>t a.txt b.txt

批处理常用命令及用法大全 - 打印

批处理常用命令及用法大全 -  打印

注:如果对某一命令还不是很熟悉,可以在命令行窗口下输入:命令名/?的方式来获得帮助。

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 为13 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\ #进入根目录cd #显示当前目录cd /d d:\mp3 #可以同时更改盘符和目录cd "Documents and Settings"\All users文件名带空格,路径前需要加上引号!!如果更改到的目录不存在,则出错返回 errorlevel=15 md创建目录md abc #在当前目录里建立子目录 abcmd d:\a\b\c #如果 d:\a 不存在,将会自动创建6 rd删除目录rd abc #删除当前目录里的 abc 子目录,要求为空目录rd /s/q d:\temp #删除 d:\temp 文件夹及其子文件夹和文件,不需要按 Y 确认7 del删除文件del d:\test.txt #删除指定文件,不能是隐藏、系统、只读文件del *.*删除当前目录里的所有文件,不包括隐藏、系统、只读文件,要求按 Y 确认del /q/a/f d:\temp\*.*删除 d:\temp 文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录del /q/a/f/s d:\temp\*.*删除 d:\temp 及子文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录8 ren文件重命名ren 1.txt 2.bak #把 1.txt 更名为 2.bakren *.txt *.ini #把当前目录里所有.txt文件改成.ini 文件ren d:\temp tmp #支持对文件夹的重命名9 cls清屏10 type显示文件内容type c:\boot.ini #显示指定文件的内容,程序文件一般会显示乱码type *.txt #显示当前目录里所有.txt文件的内容11 copy拷贝文件copy c:\test.txt d:\复制 c:\test.txt 文件到 d:\ copy c:\test.txt d:\test.bak复制 c:\test.txt 文件到 d:\ ,并重命名为 test.bakcopy c:\*.*复制 c:\ 所有文件到当前目录,不包括隐藏文件和系统文件不指定目标路径,则默认目标路径为当前目录copy con test.txt从屏幕上等待输入,按 Ctrl+Z 结束输入,输入内容存为test.txt文件con代表屏幕,prn 代表打印机,nul代表空设备copy 1.txt + 2.txt 3.txt合并 1.txt 和 2.txt 的内容,保存为 3.txt 文件如果不指定 3.txt ,则保存到1.txtcopy test.txt +复制文件到自己,实际上是修改了文件日期12 title设置cmd窗口的标题title 新标题#可以看到cmd窗口的标题栏变了13 ver显示系统版本14 label 和 vol设置卷标vol #显示卷标label #显示卷标,同时提示输入新卷标label c:system #设置C盘的卷标为 system15 pause暂停命令运行该命令时,将显示下面的消息:请按任意键继续 . . .1一般用于看清楚屏幕上显示的内容16 rem 和 ::注释命令注释行不执行操作17 date 和 time日期和时间date #显示当前日期,并提示输入新日期,按"回车"略过输入date/t #只显示当前日期,不提示输入新日期time #显示当前时间,并提示输入新时间,按"回车"略过输入time/t #只显示当前时间,不提示输入新时间18 goto 和 :跳转命令:label #行首为:表示该行是标签行,标签行不执行操作goto label #跳转到指定的标签那一行19 find (外部命令)查找命令find "abc" c:\test.txt在 c:\test.txt 文件里查找含abc 字符串的行如果找不到,将设 errorlevel 返回码为1find /i "abc" c:\test.txt查找含 abc 的行,忽略大小写find /c "abc" c:\test.txt显示含 abc 的行的行数20 more (外部命令)逐屏显示more c:\test.txt#逐屏显示 c:\test.txt 的文件内容21 tree显示目录结构tree d:\ #显示D盘的文件目录结构22 &顺序执行多条命令,而不管命令是否执行成功c: & cd\ & dir /w相当于把下面3行命令写到1行去了c:cd\dir /w23 &&顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令f: && cd\ && dir >c:\test.txt注意如果f盘不存在,那么后面2条命令将不会执行find "ok" c:\test.txt && echo 成功如果找到了"ok"字样,就显示"成功",找不到就不显示24 ||顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令find "ok" c:\test.txt || echo 不成功如果找不到"ok"字样,就显示"不成功",找到了就不显示25 |管道命令前一个命令的执行结果输出到后一个命令dir *.* /s/a | find /c ".exe"管道命令表示先执行 dir 命令,对其输出的结果执行后面的 find 命令该命令行结果:输出当前文件夹及所有子文件夹里的.exe文件的个数type c:\test.txt|more这个和 more c:\test.txt 的效果是一样的26 > 和 >>输出重定向命令> 清除文件中原有的内容后再写入>> 追加内容到文件末尾,而不会清除原有的内容主要将本来显示在屏幕上的内容输出到指定文件中指定文件如果不存在,则自动生成该文件echo hello world>c:\test.txt生成c:\test.txt文件,内容为hello world这个格式在批处理文件里用得很多,可以生成.reg .bat .vbs 等临时文件type c:\test.txt >prn屏幕上不显示文件内容,转向输出到打印机echo hello world>con在屏幕上显示hello world,实际上所有输出都是默认 >con 的copy c:\test.txt f: >nul拷贝文件,并且不显示"文件复制成功"的提示信息,但如果f盘不存在,还是会显示出错信息copy c:\test.txt f: >nul 2>nul不显示"文件复制成功"的提示信息,并且f盘不存在的话,也不显示错误提示信息echo ^^W ^> ^W>c:\test.txt生成的文件内容为 ^W > W^ 和 > 是控制命令,要把它们输出到文件,必须在前面加个 ^符号27 <从文件中获得输入信息,而不是从屏幕上一般用于 date time label 等需要等待输入的命令@echo offecho 2005-05-01>temp.txtdate <temp.txtdel temp.txt这样就可以不等待输入直接修改当前日期28 %0 %1 %2 %3 %4 %5 %6 %7 %8 %9 %*命令行传递给批处理的参数%0 批处理文件本身%1 第一个参数%9 第九个参数%* 从第一个参数开始的所有参数在C盘根目录新建test.bat,内容如下:@echo offecho %0echo %1echo %2echo %*运行cmd,输入 c:\test.bat "/a" /b /c /d可以看出每个参数的含意修改test.bat内容如下@echooffecho %1echo %~1echo %0echo %~f0echo %~d0echo % ~p0echo %~n0echo %~x0echo %~s0echo %~a0echo %~t0echo %~z0再运行cmd,输入 c:\test.bat "/a" /b /c /d可以参照call/? 或 for/? 看出每个参数的含意注意这里可以对文件进行日期比较和大小比较echo load "%%1" "%%2">c:\test.txt生成的文件内容为load "%1" "%2"批处理文件里,用这个格式把命令行参数输出到文件31 set设置变量引用变量可在变量名前后加 % ,即 %变量名%set #显示目前所有可用的变量,包括系统变量和自定义的变量2echo %SystemDrive% #显示系统盘盘符。

批处理常用命令及用法大全_-__打印

批处理常用命令及用法大全_-__打印

批处理常用命令及用法大全_-__打印1 echo 和@回显控制命令@ #关闭单行回显echo off #从下一行开始关闭回显@echo off #从本行开始关闭回显。

一般批处理第一行都是这个echo on #从下一行开始打开回显echo #显示当前是echo off 状态还是echo on 状态echo. #输出一个"回车换行",一般就是指空白行echo hello world #输出hello world"关闭回显"是指运行批处理文件时,不显示文件里的每条空目录rd /s/qd:\temp #删除d:\temp 文件夹及其子文件夹和文件,不需要按Y 确认7 del删除文件del d:\test.txt #删除指定文件,不能是隐藏、系统、只读文件del *.*删除当前目录里的所有文件,不包括隐藏、系统、只读文件,要求按Y 确认del /q/a/f d:\temp\*.*删除d:\temp 文件夹里命令,只显示运行结果批处理开始和结束时,系统都会自动打开回显2errorlevel程序返回码echo %errorlevel%每个命令运行结束,可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为0,一般命令执行出错会设errorlevel 为13 dir显示目录中的文件和xx列表dir #显示当前目录中的文件和xxdir /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\ #进入根目录cd #显示当前目录cd /d d:\mp3 #可以同时更改盘符和目录cd "Documentsand Settings"\All users文件名带空格,路径前需要加上引号!!如果更改到的目录不存在,则出错返回errorlevel=15 md创建目录md abc #在当前目录里建立子目录abcmd d:\a\b\c #如果d:\a 不存在,将会自动创建面的所有文件,包括隐藏、只读、系统文件,不包括子目录del /q/a/f/s d:\temp\*.*删除d:\temp 及子文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录8 ren文件重命名ren 1.txt 2.bak #把1.txt更名为2.bakren *.txt *.ini #把当前目录里所有.txt文件改成.ini文件ren d:\temp tmp #支持对文件夹的重命名9 cls清屏10 type显示文件内容type c:\boot.ini #显示指定文件的内容,程序文件一般会显示乱码type *.txt #显示当前目录里所有.txt文件的内容11copy拷贝文件XCOPY复制组文件COPY复制文件拷贝目录和文件——xcopy在拷贝单个文件时,可以使用copy命令完成,但当我们要成批拷贝文件,甚至连同子目录一起拷贝时,就要用到xcopy。

批处理基础知识

批处理基础知识

第一节常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BA T或者CMD。

这些命令统称批处理命令。

小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程。

了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BA T!"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 的注释作用, 而且更简洁有效; 但有两点需要注意:第一, 任何以冒号:开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

关于批处理命令!一.简单批处理内部命令简介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语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。

Rem MessageSample:@Rem Here is the description.5.Pause 命令运行Pause 命令时,将显示下面的消息:Press any key to continue . . .Sample:@echo off:begincopy a:*.* d:\backecho Please put a new disk into driver Apausegoto begin在这个例子中,驱动器A 中磁盘上的所有文件均复制到d:\back中。

显示的注释提示您将另一张磁盘放入驱动器A 时,pause 命令会使程序挂起,以便您更换磁盘,然后按任意键继续处理。

6.Call 命令从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。

call 命令接受用作调用目标的标签。

如果在脚本或批处理文件外使用Call,它将不会在命令行起作用。

语法call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]参数[Drive:}[Path] FileName指定要调用的批处理程序的位置和名称。

filename 参数必须具有.bat 或.cmd 扩展名。

7.start 命令调用外部程序,所有的DOS命令和命令行程序都可以由start命令来调用。

入侵常用参数:MIN 开始时窗口最小化SEPARATE 在分开的空间内开始16 位Windows 程序HIGH 在HIGH 优先级类别开始应用程序REALTIME 在REALTIME 优先级类别开始应用程序WAIT 启动应用程序并等候它结束parameters 这些为传送到命令/程序的参数执行的应用程序是32-位GUI 应用程序时,CMD.EXE 不等应用程序终止就返回命令提示。

如果在命令脚本内执行,该新行为则不会发生。

8.choice 命令choice 使用此命令可以让用户输入一个字符,从而运行不同的命令。

使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。

它的返回码为1234……如: choice /c:dme defrag,mem,end将显示defrag,mem,end[D,M,E]?Sample:Sample.bat的内容如下:@echo offchoice /c:dme defrag,mem,endif errorlevel 3 goto defrag (应先判断数值最高的错误码)if errorlevel 2 goto memif errotlevel 1 goto end:defragc:\dos\defraggoto end:memmemgoto end:endecho good bye此文件运行后,将显示defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。

if 表示将判断是否符合规定的条件,从而决定执行不同的命令。

有三种格式:1、if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。

(注意是两个等号)如if "%1"=="a" format a:if {%1}=={} goto noparmsif {%2}=={} goto noparms2、if exist 文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。

如if exist config.sys edit config.sys3、if errorlevel / if not errorlevel 数字待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。

如if errorlevel 2 goto x2DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。

for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。

在批处理文件中使用FOR 命令时,指定变量请使用%%variablefor {%variable|%%variable} in (set) do command [ CommandLineOptions]%variable 指定一个单一字母可替换的参数。

(set) 指定一个或一组文件。

可以使用通配符。

command 指定对每个文件执行的命令。

command-parameters 为特定命令指定参数或命令行开关。

在批处理文件中使用FOR 命令时,指定变量请使用%%variable而不要用%variable。

变量名称是区分大小写的,所以%i 不同于%I如果命令扩展名被启用,下列额外的FOR 命令格式会受到支持:FOR /D %variable IN (set) DO command [command-parameters]如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-检查以[drive:]path 为根的目录树,指向每个目录中的FOR 语句。

如果在/R 后没有指定目录,则使用当前目录。

如果集仅为一个单点(.)字符,则枚举该目录树。

FOR /L %variable IN (start,step,end) DO command [command-para该集表示以增量形式从开始到结束的一个数字序列。

因此,(1,1,5) 将产生序列1 2 3 4 5,(5,-1,1) 将产生序列(5 4 3 2 1)。

FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN (command) DO command或者,如果有usebackq 选项:FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN (command) DO commandfilenameset 为一个或多个文件名。

继续到filenameset 中的下一个文件之前,每份文件都已被打开、读取并经过处理。

处理包括读取文件,将其分成一行行的文字,然后将每行解析成零或更多的符号。

然后用已找到的符号字符串变量值调用For 循环。

以默认方式,/F 通过每个文件的每一行中分开的第一个空白符号。

跳过空白行。

您可通过指定可选"options" 参数替代默认解析操作。

这个带引号的字符串包括一个或多个指定不同解析选项的关键字。

这些关键字为:eol=c - 指一个行注释字符的结尾(就一个)skip=n - 指在文件开始时忽略的行数。

delims=xxx - 指分隔符集。

这个替换了空格和跳格键的默认分隔符集。

tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代的for 本身。

这会导致额外变量名称的格式为一个范围。

通过nth 符号指定m符号字符串中的最后一个字符星号,那么额外的变量将在最后一个符号解析之分配并接受行的保留文本。

usebackq - 指定新语法已在下类情况中使用:在作为命令执行一个后引号的字符串并且引号字符为文字字符串命令并允许在fi中使用双引号扩起文件名称。

sample1:FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command会分析myfile.txt 中的每一行,忽略以分号打头的那些行,将每行中的第二个和第三个符号传递给for 程序体;用逗号和/或空格定界符号。

相关文档
最新文档