这篇文章主要介绍了批处理中常用命令介绍,包括Echo、rem、goto、call、pause、if、for,学习bat必备

一、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命令先前输入的(或者手工删掉换行符)

  1. (ECHO 字符串 &ECHO 字符串…)>文件路径和文件名 :
    将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在CMD窗口中。如果文件中已经有数据,将先自动清空后再写入。
  2. (ECHO 字符串 &ECHO 字符串…)>>路径和文件名
    将多行数据写入文件中(注意括号不能去掉,如果括号去掉的话,那么只能写入最后一个,前面的将输出在CMD窗口中。如果文件中已经有数据,就将该字符串追加到文件的末尾。
  3. (ECHO 字符串)>>文件路径和文件名:在文件中另起一行追加上字符串。如图所示:
  4. 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) 组合命令 &、&&、||
:&,符号允许同时执行多条命令,当第一个命令执行失败了,也不影响后边的命令执行。这里 & 两边的命令是顺序执行的,从前往后执行。
&&符号允许同时执行多条命令,当碰到执行出错的命令后将不再执行后面的命令,如果一直没有出错则一直执行完所有命令。
正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。
(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%

联网测试.cmd

@echo off
echo -----------------
echo      联网测试
echo -----------------

set /p input= 1.联网测试 2.局域网1测试 3.局域网2测试 4.局域网4测试 6.局域网6测试:
if "%input%"=="1" goto A 
if "%input%"=="2" goto B 
pause 
exit 

:A 
echo 您输入的是 1.联网测试
ping 114.114.114.114 -l 1 -t
pause 
exit 

:B
echo 您输入的是 2.局域网测试
ping 192.168.1.1 -l 1 -t
pause 
exit