之所以要弄个遍历目录下的子目录的名字,是在做打包的使用。

比我们有个目录,名字为parent,之下有son1,son2等目录,我们想自动遍历出他们的名字,以他们的名字创建压缩包,那么就需要使用for这个语法了。

svn export https://192.168.0.2/svn/akcms/apps/

md apppackages

cd apps

for /D %%i in (*) do (cd %%i

 7z a -tzip ../%%i.zip *

 cd ..

)

move *.zip ../apppackages/

echo 最新版本打包完毕

echo

echo

echo

echo

pause

 

FOR 语法:FOR %variable IN (set) DO command [command-parameters]  

for的参数有D L R F 这四个,D:只能显示当前目录下的目录名字参数 /R (搜索指定路径及所有子目录中与for后面括号中描述相符合的所有文件),参数 /L (该集表示以增量形式从开始到结束的一个数字序列。可以使用负的 Step) 。

7z是压缩命令,通过 选项a表示添加新的压缩包,-t则指定压缩的格式,之后是压缩后的文件名,要压缩哪个文件或目录。