windows批处理

常用命令:
echo 回显命令  即将echo后面的内容显示到控制台上,需要辨别几处区别: 

例如对于如下的脚本:

@echo off

echo This is 1line
echo This is 2 line 
echo This is last line

@pause

@echo off     表示执行这条命令之后关闭所有命令的回显(包括当前这一条)

echo off     关闭 除本条命令之外的所有命令的回显   

::echo  off     ::表示注释掉echo off,即所有命令均有回显

pause: 表示暂停命令, 即输出 “请按任意键继续...”

rem   表示注释本行内容     rem This is a comment

set  设置变量的值, 例如   set PI = 3.14, 调用变量的值,需要%PI%,例如, echo Pi = %PI%

type命令  显示某个文件中的内容    例如   type  a.txt

call  在批处理中调用另外一个批处理命令    例如 call "D:\software\visual studio\VC\vcvarsall.bat"

goto 和 :  goto是一个跳转命令,当程序执行到goto语句的时候,会自动跳转到:定义的标签去执行

if not "%1"=="vsvars" goto ENDVSVARS
call "D:\software\visual studio\VC\vcvarsall.bat"
:ENDVSVARS

for循环语句:

基本的for循环语句如下所示,%%i表示引用变量(在cmd窗口中,只需要%i即可),即使在循环体中用不到,也需要写,for, do也不可省略。

for %%i in (A, B, C) do (
echo This is: %%i
)

运行结果:

此外,for循环还有四个参数可循,分别是/d /l /r /f

1. 参数/d   命令格式    for /d %%i  in  (集合)  do  command       

/d 是指定仅对符合条件的目录执行command命令,例如:for  /d  %%i  in (c:\*.*) do echo %i ,列出C盘下所有的目录

可已将bat脚本放在特定的目录下,for  /d  %%i  in (*) do echo %i , 列出当前目录下所有的目录

2. 参数 /r  命令格式    for /r %%i  in  (集合)  do  command  其中,/r后还可以有盘符或者路径,如果不加盘符或者路径,就是已当前脚本所在的路径为准。

   /r与/d的区别是,/r可以将目录下的所有文件名进行读取,而/d只能获取到目录名。

   例如: for /r d:/  %%i   in (file1,file2)  do( if exist %%i  echo %%i)     D盘的所有file1,file2文件

               for /r .  %%i   in (file1,file2)  do( if exist %%i  echo %%i)     没有盘符或者 . 都代表脚本所在的当前目录

3. 参数 /f ,可以打开集合里的符合匹配条件的文件,能够实现增删查改操作,命令格式如下:

for  /f  "选项"   %%i  in   (集合)  do  command

也可以不做选项,例如需要显示文件里面的内容,则按照如下的命令:
for /f  %%i  in (file集合)  do  echo %%i 即可显示文件集合里面文件的完整内容

选项可以分为:skip=1  tokens=1,2,3  delims= , 在缺省选项参数的情况下,会已空格作为默认的分割符,然后会在打开的文件中,按照一行一行给字符串分段,分段的分隔符就是delims指定,默认为空格。skip表示文本开始忽略的行数,tokens用于指定依次取第几个分割的字符串段赋给变量以及顺序附加变量。例如,token=1,2,3-5,表示第1,2,3,4,5段分配给变量以及顺序附加变量。tokens=1,2,3* ,  3*表示3后所有的字符串段,或者token表示1,2,3,4,5

命令的用法:

for /f  "skip=1  tokens=1,2,3  delims= "  %%a in  (file集合)  do command

则此时,每一行的字符串段依次分配给变量 %%a, %%b, %%c

4.  参数/L  ,表示使用一组数值范围来控制迭代,命令的格式为,for /L %%i  in  (start, step, end)  do command

---------------------------------------------------分割线--------------------------------------------------

记录:

通过%cd%可获取当前运行的脚本所在的路径, %PATH%在运行脚本中获取系统环境变量中添加的路径。

echo set environment variable
set Application_Dir=%cd%
set Application_Ver=R100

echo Application_Dir=%Application_Dir%
echo Application_Ver=%Application_Ver%
echo P=%PATH%

 


 

            

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值