首页 > 其他 > 详细

Bat文件脚本

时间:2019-03-30 17:42:07      阅读:100      评论:0      收藏:0      [点我收藏+]

批处理文件运行机制:批处理读取命令时是按行读取的,对于for 命令等,其后用一对圆括号闭合的所有语句也当作一行。

在for循环中,如果要循环的对某个变量进行赋值,那就需要对该变量进行动态捕获,从而获得实时变化的该变量的值。
setlocal enabledelayedexpansion 命令就是启用变量延迟,
(1)如果不启用变量延迟,变量在预处理阶段不作改变
(2)如果启用变量延迟,用 ! 括起来的变量,就是需要动态捕获的目标变量,如果不需要,可以继续使用 % 括变量。

@echo off
setlocal enabledelayedexpansion
set var=-1
for /l %%i in (1 1 10) do (
    set var=%%i
    echo !var! 启用延缓环境变量,var的值是不断变化的,1->2->3,...,->10
    echo %var% 未启用延缓环境变量,var的值永远是初始化的-1
)

另外一个例子:

 

@echo off
setlocal enabledelayedexpansion
set python=python.exe
set code_e=e.code
set code_j=j.code

for /l %%i in (0,1,10) do (    
    set src=e.txt.wbr.bpe.%%i.out
    set tgt=j.txt.wbr.bpe.%%i
    start cmd /k  %python%  apply_bpe.py -c %code_j% -i !src! -o !tgt!
)

pause

 

Bat文件脚本

原文:https://www.cnblogs.com/codeDog123/p/10628105.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!