全部文章 | 第7页

The damn “for” in batch file!

本来想在单个批处理文件里面实现类似下面的操作:

@echo off
SET num=0
FOR /D %%i IN (*) DO (
SET /a num=%num%+1
echo %num%.%%i
)
echo %num%
pause>nul

结果发现这个该死FOR里面居然不能改变%num%的值,查了下 FOR /? 说是要用CMD /v启动命令行,然后把%num%改成!num!,我本来的目的是直接双击这一个批处理就完成操作的,看来不能用批处理实现了,去除这个部分,结果就有些不完美了,转向研究VBS中,看看VBS脚本能不能比较完美地实现我想要完成的功能,没找到好点的脚本对象手册,MSDN网上查又太慢,比较郁闷的

Update(2010-06-01): 原来通过设置延迟环境变量扩展,把%num%改为!num!后可实现:

@echo off & setlocal enabledelayedexpansion
SET num=0
FOR /D %%i IN (*) DO (
SET /a num=!num!+1
echo !num!.%%i
)
echo %num%
pause>nul

参见:

  1. http://www.java3z.com/cwbwebhome/article/article9/973.html

本博第一文

很随意的在这里发表一些文章,基本上是跟技术相关的,文章涉及面也很随意,只要感兴趣的,或者平时解决的一些问题,都有可能发表在这里。

发表文章的时间也很随意的,也就是说有时候可能一天会发个几篇,也可能一年半载也没反应。

访问量也很随意的,一天不到1个IP我也不会介意,小博而已么,不用太在意这些(其实,看得人多我当然会开心啦!)。