批处理循环

可能要用变量延迟吧!
例如:

setlocal enabledelayedexpansion

if exist "Temp\%dat%-%timo%-PASS-%name%" for /f "usebackq tokens=*" %%l in ("Temp\%dat%-%timo%-PASS-%name%") do set /a a= !a! + 1 

不过你的好像少了个/a ,
set /a才是计算!
echo off&setlocal enabledelayedexpansion
set n=0

pause
for /f "tokens=1,2 delims= " %%i in ('dir/b *.jpg') do (
set /a n+=1 
echo !n!
)
pause

这样就行了!
*************************资源****************************************************************************************************

@echo off   set /a num=0  //设置环境变量num  /a 命令选项指定等号右边的字符串为被评估的数字表达式 :loop  set /a num+=1 if %num%==11 ( goto exit ) echo 这是第 %num% 次运行 echo. goto loop :exit echo 循环结束 pause

 

 

几点总结:

系统变量就是环境变量 列入 %PATH%

%1 ~~~%9 是需要在外面传递进来的参数 相当于CmdLine %* 用于显示所有的CmdLine %0 返回批处理的名称  echo %0    可以实现无限循环bat,因为%0代表批处理的程序名(等于在调用自己这个批处理)    例子:  @echo off  net user  %0

自定义变量(自定义环境变量)  set var=我是值  //不需要双引号"" echo %var%

让用户自己输入变量,用set命令的/p参数 @echo off set /p var=请输入变量的值: echo %var% pause 

用set命令的/A参数  指定等号右边的字符串为被评估的数字表达式     取余运算符好像不行,不知道为什么 ???????? set /A myval=10 set /A myval=myval"%"3 echo %myval%  //显示确为0

o(∩_∩)o...哈哈,问题解决喽,纪念下2008.5.8

取余运算符需要用两个%, 即%%

set /A myval=10 set /A myval=myval%%3 echo %myval%  //显示确为1

%CD% - 扩展到当前目录字符串。 %DATE% - 用跟 DATE 命令同样的格式扩展到当前日期。 %TIME% - 用跟 TIME 命令同样的格式扩展到当前时间。 %RANDOM% - 扩展到 0 和 32767 之间的任意十进制数字。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值