批处理命令Word格式文档下载.docx
《批处理命令Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《批处理命令Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
在批处理文件或CONFIG.SYS里加上注解或说明。
REM[comment]
rem这是自动产生QQ号码的批处理程序
和:
:
功能相同,相当于C语言中的"
//"
4.goto
跳转命令,将cmd.exe导向到批处理程序中带标签的行。
GOTOlabel
label:
指定批处理程序中用作标签的文字字符串。
gotoProduce跳转到Produce标签处
5.call
从批处理程序调用另一个批处理程序。
CALL[drive:
][path]filename[batch-parameters]
batch-parameters:
指定批处理程序所需的命令行信息。
callclear.bat
6.start
启动另一个窗口运行指定的程序或命令。
START["
title"
][/Dpath][/I][/MIN][/MAX][/SEPARATE|/SHARED]
[/LOW|/NORMAL|/HIGH|/REALTIME|/ABOVENORMAL|/BELOWNORMAL]
[/WAIT][/B][command/program]
[parameters]
startcmd打开另一命令行窗口
start批处理教程.doc打开批处理教程.doc文档
start打开XX主页
7.set
显示、设置或删除cmd.exe环境变量。
SET[variable=[string]]
variable指定环境变量名。
string指定要指派给变量的一系列字符串。
(1)定义普通变量
setvar=zhangyang
echo%var%
执行结果为:
zhangyang
(2)SET/Pvariable=[promptString]
/P命令行开关允许将变量数值设成用户输入的一行输入。
读取输入
行之前,显示指定的promptString。
promptString可以是空的。
set/pvar=请输入编号:
请输入编号:
1000
执行echo%var%后,显示结果为:
(3)SET/Aexpression
/A命令行开关指定等号右边的字符串为被评估的数字表达式。
set/avar=1
set/avar+=2
3
8.if
执行批处理程序中的条件处理。
IF[NOT]ERRORLEVELnumbercommand
IF[NOT]string1==string2command
IF[NOT]EXISTfilenamecommand
(1)IF[NOT]ERRORLEVELnumbercommand
通过判断上一条命令执行结果,来决定下一个步骤.
一般上一条命令的执行结果代码只有两结果,"
成功"
用0表示"
失败"
用1
errorlevel.bat
@echooff
ping>
ip.txt
iferrorlevel0(echopingsucceed!
)else(echopingfail!
)
pause
执行结果:
pingsucceed!
(2)IF[NOT]string1==string2command
比较string1和string2是否相等,若相等,则执行if后的命令,否则将不执行.
stringequal.bat
if"
=="
zhangyang"
(echoequal)else(echononequal)
nonequal
(3)IF[NOT]EXISTfilenamecommand
判断文件是否存在,若存在,则执行if后的命令,否则将不执行.
exist.bat
echooff
ifexistqq.dic(
echoqq.dicexist
delqq.dic
)else(echoqq.dicdoesn'
texist)
qq.dicdoesn'
texist
9.for
对一组文件中的每一个文件执行某个特定命令。
FOR%%variableIN(set)DOcommand
%%variable指定一个单一字母可替换的参数。
(set)指定一个或一组文件。
可以使用通配符。
command指定对每个文件执行的命令。
(1)for/D%%variableIN(set)DOcommand
for_D.bat
for/d%%iin(D:
\M*)doecho%%i
说明:
将D盘目录下以"
M"
开头的目录显示出来
D:
\MASM
\MicrosoftSQLServer2000
\MicrosoftVistualStudio6.0(English)
\MSDNforVisualStudio6.0
请按任意键继续...
(2)FOR/R[[drive:
]path]%%variableIN(set)DOcommand
检查以[drive:
]path为根的目录树,指向每个目录中的
FOR语句。
如果在/R后没有指定目录,则使用当前
目录。
如果集仅为一个单点(.)字符,则枚举该目录树。
for_R.bat
for/rD:
\%%iin(D:
G:
\my.doc
\zy\yy\my.txt
\M01\MSWINSCK.OCX
(3)FOR/L%variableIN(start,step,end)DOcommand[command-parameters]
该集表示以增量形式从开始到结束的一个数字序列。
for_L.bat
setsum=0
set/pvar=请输入变量
for/l%%iin(1,1,%var%)doset/Asum+=%%i
echo1到%var%的和为:
%sum%
请输入变量100
1到100的和为:
5050
(4)
FOR/F["
options"
]%variableIN(file-set)DOcommand[command-parameters]
]%variableIN("
string"
)DOcommand[command-parameters]
]%variableIN('
command'
eol=c-指一个行注释字符的结尾(就一个)
skip=n-指在文件开始时忽略的行数。
delims=xxx-指分隔符集。
这个替换了空格和跳格键的
默认分隔符集。
tokens=x,y,m-n-指每行的哪一个符号被传递到每个迭代
的for本身。
这会导致额外变量名称的分配。
m-n
格式为一个范围。
通过nth符号指定mth。
如果
符号字符串中的最后一个字符星号,
那么额外的变量将在最后一个符号解析之后
分配并接受行的保留文本。
eol:
注释行的字符
delims:
分隔符集.默认为空格和跳格键
tokens:
每行的第几列符号
ShowIP.bat
for/f"
tokens=15"
%%iin('
ipconfig^|find/i"
ipaddress"
'
)dosetip=%%i
echo%ip%
192.168.1.190
可以用Dos命令reg.exe来删除。
举例如下:
假如我要清除WinRAR的历史记录,可以新建个批处理文件,
然后在里面加入如下文字:
regdeleteHKEY_CURRENT_USER\Software\WinRAR\DialogEditHistory\ExtrPath/va/f
regdeleteHKEY_CURRENT_USER\Software\WinRAR\DialogEditHistory\ArcName/va/f
regdeleteHKEY_CURRENT_USER\Software\WinRAR\ArcHistory/va/f
其中/va参数是指删除该分支下的所有键值,/f参数是指不要跳出提示。
-------------------------------------------------------------------------------------
如果想删除整个分支,就不要加/va,
例如:
regdeleteHKEY_CURRENT_USER\Software\CrocWare
如果想删除某个键值,就用regdelete(分支)/v(键值)
例如:
regdeleteHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\TrayNotify/vPastIconsStream/f
要注意:
如果注册表中有空格,应用双引号括住注册表;
如果注册表中有%,就用%%来表示;
要清除Alcohol120%的历史记录,可以在批处理中加入如下命令:
regdelete"
HKEY_CURRENT_USER\Software\AlcoholSoft\Alcohol120%%\Basic"
/v"
ImageFilePath"
/f
HKEY_CURRENT_USER\Software\AlcoholSoft\Alcohol120%%\MountedMRU"
VBS删除注册表键值的问题首先是WshShell对象。
该对象可用来设置系统环境变量以及修改注册