-
colin
BA
T
< br>常用命令
1
、
@
它的
作用是隐藏它后面这一行的命令本身(只能影响当前行)
。
2
、
echo
中文为“反馈”
、
“回显”的意思。它其实是一个开关命令,
就是说它只有两种状态:打开和关闭。于是就有
了
echo
on
和
echo off
两个命令了。
直接执行
echo
命令将显示当前
ec
ho
命令状态(
off
或
on
)执行
echo off
将关闭回显,它后面的所有命令都不显示命令本身,只显示执行后的结果。
echo.
:输出空行,即相当于输入一个回车;值得注意的
是命令行中的“.
”要紧跟在
ECHO
后面中间不能
有空格,否则“.
”将被当作提示信息输出到屏幕
。另外“.
”可以用,
:
;
”/
[]
+等任一符号替代。
3
、
start
命令
调用外部程序,所有的
DOS
命令和命令行程序都可以由
start<
/p>
命令来调用。
start /wait
:
start
命令会启动软件的安装程序,而
/wait
命令会让系统在处理批处理文件中的下一条命令之前等待前一个
p>
软件安装完成。使用
/wait
命令是很重
要的,只有这样才不会让批处理文件中的所有命令一下子全部执行起
来,那样将会导致同
一时间运行多个软件的安装程序。
如:几秒钟让你的内存耗尽
(
例一
)
:<
/p>
@Echo off
Start <
/p>
cmd:
开启
CMD
程序
)
%0
4
、
pause
中文为“暂停”的意思。它的作用,是让当前程序进程暂停一下,并显示一行信息:请按任意键继续
. .
.
。
我们可以加
>nul
把这个信息隐藏。
5
、
:
和
goto
为什么要把这两个命令联合起来介绍?因为它们是分不开的,无论
少了哪个或多了哪个都会出错。
goto
是
个跳转命令,
:
是一个标签。当程序运行到
goto
时,将自动跳转到
:
定义的部分去执行了。如:为你的右键添
加
P
< br>处理(例二)
@echo off
echo
输入
1
后按回车键
,
< br>添加右键
P
处理
echo
输入
2
后按回车键
,
退出
echo.
set /p start=
请选择
(1
、
2)
后按回车键
:
if
if
:1
@echo off
color 1a
reg add llNew /v
nullfile /f >nul
reg add HKCRbatfile
/ve /d P
处理
/f
>nul
exit
:2
Exit
6
、
%
这个百分号严格来说是算不上命令的,它只是批处理中的参数。
%[1-9]
表示参数,参数是指在运行批处理文件时在文件名
后加的以空格(或者
Tab
)分隔的字符串。变量可
以从
%0
到
%9
,
%0
有两个意义
- 1 -
colin
一是表示批处理命令本身,还一个就是无限循环,其它参数字符串用
%1
到
%9
顺序表示。
如
:
%0
表示批处理命令本身
新建一个
文件。输入以下内容:
< br>
@echo off
del
%0
pause
大家看效果,
p>
已经被删除了。
还一个意思无限循环
!
如例一。无限执行
start cmd
这条命令
!
%1
、
%2
??的意思:
例:
@echo off
echo %1 %2 %3
echo %1
echo %2
echo %3
进
入
CMD,
输入
cd c:
然后输入
我是第一个参数
我是第二个参数
我是第三个参数
注意中间的空格
p>
,
我们会看到这样的结果
:
我是第一个参数
我是第二个参数
我是第三个参数
我是第一个参数
我是第二个参数
我是第三个参数
对比下代码
,%1
就是我是第一个参数
%2
就是我是第二个参数
还有一个
%*
他是什么呢
?
他的作用不是很大
,
只是返回参数而已
,
不过他是一次返回全部参数的值
,
不用在
输入
%1
%2
来确定一个个的
例子
@echo off
echo %*
同样保存为
放到
C
盘
<
/p>
进入
CMD,
输入
cd c:
然后输入
我是第一个参数
我是第二个参数
我是第三个参数
我是第四个参数
可以看到他一次把全部参数都显示出来了
现在说自定义变量
故名思意
,
自定义变量就是由我们来给他赋予值的变量;要使用自定义变量就得使
用
set
命令了
,
看例子
.
@echo off
set var=
我是值
echo %var%
pause
保存为
BAT
执行
,
< br>我们会看到
CMD
里返回一个
我是值<
/p>
var
为变量名
,=
号右边的是要给变量的值
- 2 -
colin
这就是最简单的一种设置变量的方法了
如果我们想让用户手工输入变量的值
,
而不是在代码里指定<
/p>
,
可以用用
set
命令的
/p
参数
例子
:
@echo off
set /p
var=
请输入变量的值
echo
%var%
pause
var
变量名
=
号右边
的是提示语
,
不是变量的值。变量的值由我们运行后自己用键盘
输入
!
7
、
if
i
f
命令是一个表示判断的命令,根据得出的每一个结果,它都可以对应一个相应的操作。
(1)
、输入判断
if
参数
字符串
待执行的命令
参数如果等于指定的字符串,则条
件成立,运行命令,否则运行下一句。
(
注意是两个等号)
p>
如
if
再如例二。
(2)
、存在判断。例:
if exist C:Progra~1TencentAD*.gif del
C:Progra~1TencentAD*.gif
如果存在那些
< br>gif
文件,
就删除这些文件。
注意,
这里的条件判断是判断存在的,
当然也可以判断不存在的
,
例如下面这句“如果不存在那些
gif
文件则退出脚本”
:
if not exist
C:Progra~1TencentAD*.gif exit
。只是多
一个
not
来表示否定而已。
(3)
、结果判断。例:
masm %
if errorlevel 1 pause
& edit %
link %
这种用法是先判断前一个命
令执行后的返回码(也叫错误码,
DOS
程序在运行完后都有返
回码)
,如果和定
义的错误码符合(这里定义的错误码为
1
)
,则执行相应的操作(这里相应的操作为
pause & edit
%
部
分)
。
8
、
call
在批处理脚本中,
call
命令用来从一个批处理脚本中调用
另一个批处理脚本。
9
、
find
这是一个搜索命令,
用来在文件中搜索特定字符串,
通常也作
为条件判断的铺垫程序。
这个命令单独使用的
情况在批处理中是
比较少见的,因为没什么实际意义。
下例中,如果不使用
p>
type
命令列出
中的内容,而是直接使用
find
命令在
中找“
8000
”
< br>,就必须得
给出这个
的绝对路径
,如果没有指定路径,
find
将搜索键入的或者由另一个命令
产生的文字。这里的
“另一个命令”指的就是
type
命令了。
@echo off
cd
netstat -an >
type | find
灰鸽子
!
del
pause & exit
10
、
for
- 3 -