中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-25 09:08
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何建立一个递增文件夹 查看 1,078 回复 3
楼 主 如何建立一个递增文件夹 发表于 2010-11-23 23:12 ·  中国 重庆 联通
初级用户
★★
积分 155
发帖 74
注册 2007-02-21 07:24
19年会员
UID 79875
性别 男
状态 离线
如何用批处理建立一个E:\1\2\3\4\5.....999\呢,就是有999层,并且文件夹是递增的
2 发表于 2010-11-25 00:58 ·  中国 台湾 台中市 大台中数位有线电视
新手上路
积分 4
发帖 3
注册 2010-11-21 00:19
15年会员
UID 177965
性别 男
状态 离线
set /a nab=0
for /l %%i in (1,1,999) do call :md
:md
set /a nab=%nab+1
set aaa=%aaa%\%nab%
md .%aaa%


剛學批次~請多指教~

[ Last edited by llleeesss2000 on 2010-11-25 at 01:04 ]
3 发表于 2010-11-25 01:57 ·  中国 北京 联通
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
Originally posted by llleeesss2000 at 2010-11-25 00:58:
set /a nab=0
for /l %%i in (1,1,999) do call :md
:md
set /a nab=%nab+1
set aaa=%aaa%\%nab%
md .%aaa%


剛學批次~請多指教~

[ Last edited by llleeesss2000 on 2010-11-25 at 01:04 ]

你可以试试用变量扩展,这样在每个循环体里面就能改变aaa的值,省去了call那段代码。

其实可以在循环中用 cd 或者 pushd 改变当前路径,直接就用名字就能建立了,比如:

@echo off
pushd E:
for /l %%d in (1,1,999) do (
md %%d
pushd %%d
)
4 发表于 2010-11-26 00:09 ·  中国 台湾 台中市 大台中数位有线电视
新手上路
积分 4
发帖 3
注册 2010-11-21 00:19
15年会员
UID 177965
性别 男
状态 离线
Originally posted by qinchun36 at 2010-11-25 01:57:

你可以試試用變量擴展,這樣在每個循環體裡面就能改變aaa的值,省去了call那段代碼。

其實可以在循環中用 cd 或者 pushd 改變當前路徑,直接就用 ...


先生說的是

真如醍醐灌頂

又多一總寫批次的思路了
论坛跳转: