批处理中常用命令介绍(Echo、rem、goto、call、pause、if、for)
程序员文章站
2022-04-10 18:51:22
一、echo命令 ()1. echo :显示当前echo的状态:echo on 或者echo off 。2. echo on :echo状态设为on,将显示命令行(如每行前...
一、echo命令 ()
1. echo :显示当前echo的状态:echo on 或者echo off 。
2. echo on :echo状态设为on,将显示命令行(如每行前的c:\>等类似标志)。
3. echo off:cho状态设为off,将不显示命令行(如每行前的c:\>等类似标志) 。
4. echo 字符串 :将输入的字符串显示在cmd屏幕上。
5. echo 字符串 &echo 字符串 … :&,类似and的意思,逻辑运算,用来显示多行数据。
6. echo 字符串 > 文件路径和文件名:将字符串写入文件中,若已有数据将先清空后写入。
7. echo 字符串 >> 文件路径和文件名 :将字符串写入文件中,若已有数据将追加到末尾。
注意每次:echo 字符串 >> 文件路径和文件名,命令之后,echo就回自动在在字符串后添加换行符,所以要想直接添加到文件末尾,那么文件中已有的数据,不能是echo命令先前输入的(或者手工删掉换行符)
8. (echo 字符串 &echo 字符串…)>文件路径和文件名 :
将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在cmd窗口中。如果文件中已经有数据,将先自动清空后再写入。
9. (echo 字符串 &echo 字符串…)>>路径和文件名
将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在cmd窗口中。如果文件中已经有数据,就将该字符串追加到文件的末尾。
10. (echo 字符串)>>文件路径和文件名:在文件中另起一行追加上字符串。如图所示:
11. echo.:输出空行,即相当于输入一个回车
注意命令行中的“.”要紧跟在echo后面中间不能有空格,否则“.”将被当作提示信息输出到屏幕。另外“.”可以用,:;+等任一符号替代。
12. echo答复语|命令文件名:自动答复命令中的提问 ,不需要人为的输入
13. echo ^g :“^g”是用ctrl+g敲入连体符号,输入多个^g可以产生多声鸣响。
二、pause命令:行此句会暂停
三、@命令:echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。
四、call命令
call 调用另一条批处理文件(如果直接调用别的批处理文件 ,执行完那条文件后将无法执行当前文件后续命令)
五、rem命令
rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的。:: 也可以起到 rem 的注释作用, 而且更简洁有效;
六、%命令
%表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。
(1) %0的应用:
dos命令行下输入:aa(代表执行aa.bat批处理程序),%0代表本身文件,这出现了一个不断执行aa.bat命令的死循环
(2) %1到%9的应用
七、控制命令
(1)if "参数" == "字符串" 待执行的命令
== 等于;equ等于;neq不等于;lss 小于;
eq 小于或等于;gtr 大于;geq大于或等于
(2)if exist 文件名 待执行的命令(eg:编辑aa1.txt文件)
(3)if errorlevel 数字 待执行的命令
如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。如if errorlevel 2 goto x2,dos程序运行时都会返回一个数字给dos,称为错误码errorlevel或称返回码
(4)or [%%f] in (集合) do [命令]
for %%c in (*.bat *.txt) do type %%c
八、目录切换
(1)cd [盘符][路径]:同一个分区的切换
(2)cd /d [盘符][路径]:不同分区的切换
(3)%cd%:显示当前的完整路径
九、目录切换 dir(略,自己去查)
十、attrib命令,设置文件属性
十一、常用命令命令(略)
del:删除文件
copy:复制文件
xcopy:复制文件夹
md:创建文件夹
rd:删除文件夹
ren:重命名文件(夹)
move:移动文件(夹)
find:字符串查找
findstr:字符串查找增强,可以进行模式匹配搜索
十二、常用网络命令和符号篇
管道命令的优先级高于重定向命令,重定向命令的优先级高于组合命令:|、>、&&
(1)重定向符 >、>>
> 重定向符, 意思是传递并且覆盖,它所起的作用是将运行的结果传递到后面的范围(后边可以是文件,也可以是默认的系统控制台,即命令提示符)。
>> 重定向符将命令的输出结果追加到其后面的设备中去。这个符号的作用和>有点类似,但他们是有区别的 >>是
传递并在文件的末尾追加,而>是覆盖。用法同>一样的。
echo hello> 1.txt
echo world>>1.txt
(2)命令管道符 |
echo y|rd /s c:\abc,通过管道命令|将echo y 的结果传给rd /s c:\abc 命令,从而达到自动输入y 的目的。
(3) 组合命令 &、&&、||
<a>:&,符号允许同时执行多条命令,当第一个命令执行失败了,也不影响后边的命令执行。这里 & 两边的命令是顺序执行的,从前往后执行。
<b>&&符号允许同时执行多条命令,当碰到执行出错的命令后将不再执行后面的命令,如果一直没有出错则一直执行完所有命令。
正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。
(4) 转义字符 ^
要输出特殊字符,就需要用 echo ^>、echo ^|、echo ^|^|、echo ^^……之类的格式来处理
(5) 变量引导符 %
① 变量引用:当百分号成对出现,并且其间包含非特殊字符时,如%var%、%str%
② 形式参数的引用,%0 表示批处理文件本身,包括完整的路径和扩展名;%1至%9 表示第一个参数至第九个参数。
③ set /a 语句,表示两数相除取余数。在命令行窗口中,只需要单个的%,在批处理文件中,需要连续两个百分号,写成%%。
set /a num=4%%2,得到num为0而非2
④ 转义符号:如果要显示%本身时,需要在前面用%来转义。
echo 一个百分号:%%
echo 两个百分号:%%%%
echo 三个百分号:%%%%%%
(6)界定符 ""
① 在表示带有空格或特殊符号的路径时常要用""来将路径括起来。
例1:cd /d cd "d:\program files\^%*abc"
因为路径中带有空格和特殊符号,所以要用""将路径括起来。
② 表示其中的内容是一个完整的字符串。
例2:set "var=abc 123"
echo %var%
1. echo :显示当前echo的状态:echo on 或者echo off 。
2. echo on :echo状态设为on,将显示命令行(如每行前的c:\>等类似标志)。
3. echo off:cho状态设为off,将不显示命令行(如每行前的c:\>等类似标志) 。
4. echo 字符串 :将输入的字符串显示在cmd屏幕上。
5. echo 字符串 &echo 字符串 … :&,类似and的意思,逻辑运算,用来显示多行数据。
6. echo 字符串 > 文件路径和文件名:将字符串写入文件中,若已有数据将先清空后写入。
7. echo 字符串 >> 文件路径和文件名 :将字符串写入文件中,若已有数据将追加到末尾。
注意每次:echo 字符串 >> 文件路径和文件名,命令之后,echo就回自动在在字符串后添加换行符,所以要想直接添加到文件末尾,那么文件中已有的数据,不能是echo命令先前输入的(或者手工删掉换行符)
8. (echo 字符串 &echo 字符串…)>文件路径和文件名 :
将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在cmd窗口中。如果文件中已经有数据,将先自动清空后再写入。
9. (echo 字符串 &echo 字符串…)>>路径和文件名
将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在cmd窗口中。如果文件中已经有数据,就将该字符串追加到文件的末尾。
10. (echo 字符串)>>文件路径和文件名:在文件中另起一行追加上字符串。如图所示:
11. echo.:输出空行,即相当于输入一个回车
注意命令行中的“.”要紧跟在echo后面中间不能有空格,否则“.”将被当作提示信息输出到屏幕。另外“.”可以用,:;+等任一符号替代。
12. echo答复语|命令文件名:自动答复命令中的提问 ,不需要人为的输入
13. echo ^g :“^g”是用ctrl+g敲入连体符号,输入多个^g可以产生多声鸣响。
二、pause命令:行此句会暂停
三、@命令:echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。
四、call命令
call 调用另一条批处理文件(如果直接调用别的批处理文件 ,执行完那条文件后将无法执行当前文件后续命令)
五、rem命令
rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的。:: 也可以起到 rem 的注释作用, 而且更简洁有效;
六、%命令
%表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。
(1) %0的应用:
dos命令行下输入:aa(代表执行aa.bat批处理程序),%0代表本身文件,这出现了一个不断执行aa.bat命令的死循环
(2) %1到%9的应用
七、控制命令
(1)if "参数" == "字符串" 待执行的命令
== 等于;equ等于;neq不等于;lss 小于;
eq 小于或等于;gtr 大于;geq大于或等于
(2)if exist 文件名 待执行的命令(eg:编辑aa1.txt文件)
(3)if errorlevel 数字 待执行的命令
如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。如if errorlevel 2 goto x2,dos程序运行时都会返回一个数字给dos,称为错误码errorlevel或称返回码
(4)or [%%f] in (集合) do [命令]
for %%c in (*.bat *.txt) do type %%c
八、目录切换
(1)cd [盘符][路径]:同一个分区的切换
(2)cd /d [盘符][路径]:不同分区的切换
(3)%cd%:显示当前的完整路径
九、目录切换 dir(略,自己去查)
十、attrib命令,设置文件属性
十一、常用命令命令(略)
del:删除文件
copy:复制文件
xcopy:复制文件夹
md:创建文件夹
rd:删除文件夹
ren:重命名文件(夹)
move:移动文件(夹)
find:字符串查找
findstr:字符串查找增强,可以进行模式匹配搜索
十二、常用网络命令和符号篇
管道命令的优先级高于重定向命令,重定向命令的优先级高于组合命令:|、>、&&
(1)重定向符 >、>>
> 重定向符, 意思是传递并且覆盖,它所起的作用是将运行的结果传递到后面的范围(后边可以是文件,也可以是默认的系统控制台,即命令提示符)。
>> 重定向符将命令的输出结果追加到其后面的设备中去。这个符号的作用和>有点类似,但他们是有区别的 >>是
传递并在文件的末尾追加,而>是覆盖。用法同>一样的。
echo hello> 1.txt
echo world>>1.txt
(2)命令管道符 |
echo y|rd /s c:\abc,通过管道命令|将echo y 的结果传给rd /s c:\abc 命令,从而达到自动输入y 的目的。
(3) 组合命令 &、&&、||
<a>:&,符号允许同时执行多条命令,当第一个命令执行失败了,也不影响后边的命令执行。这里 & 两边的命令是顺序执行的,从前往后执行。
<b>&&符号允许同时执行多条命令,当碰到执行出错的命令后将不再执行后面的命令,如果一直没有出错则一直执行完所有命令。
正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。
(4) 转义字符 ^
要输出特殊字符,就需要用 echo ^>、echo ^|、echo ^|^|、echo ^^……之类的格式来处理
(5) 变量引导符 %
① 变量引用:当百分号成对出现,并且其间包含非特殊字符时,如%var%、%str%
② 形式参数的引用,%0 表示批处理文件本身,包括完整的路径和扩展名;%1至%9 表示第一个参数至第九个参数。
③ set /a 语句,表示两数相除取余数。在命令行窗口中,只需要单个的%,在批处理文件中,需要连续两个百分号,写成%%。
set /a num=4%%2,得到num为0而非2
④ 转义符号:如果要显示%本身时,需要在前面用%来转义。
echo 一个百分号:%%
echo 两个百分号:%%%%
echo 三个百分号:%%%%%%
(6)界定符 ""
① 在表示带有空格或特殊符号的路径时常要用""来将路径括起来。
例1:cd /d cd "d:\program files\^%*abc"
因为路径中带有空格和特殊符号,所以要用""将路径括起来。
② 表示其中的内容是一个完整的字符串。
例2:set "var=abc 123"
echo %var%
上一篇: Python实现购物车功能的方法分析
下一篇: 查看网关的MAC地址的批处理文件