Board logo

标题: 重复创建文件夹 [打印本页]

作者: 26933062     时间: 2007-1-11 10:50    标题: 重复创建文件夹

我想在当前目录下先创建4个文件夹a,b,c,d
再在每个文件夹下包括子目录下又创建4个文件夹a,b,c,d
也就是说每个文件夹下包括子文件夹都有a,b,c,d4个文件夹
,局限是4层.
看似简单作起来还真有点难度,各位高人有什么办法吗?

作者: lxmxn     时间: 2007-1-11 11:14
  在CMD命令行执行一下代码:
for %a in (a b c d) do @for %b in (a b c d) do @for %c in (a b c d) do @for %d in (a b c d) do @md %a\%b\%c\%d

作者: 26933062     时间: 2007-1-11 11:42
多谢,lxmxn

这个for嵌套还真难搞懂
作者: yjcblue     时间: 2007-1-11 11:45


  Quote:
Originally posted by lxmxn at 2007-1-10 10:14 PM:
  在CMD命令行执行一下代码:
for %a in (a b c d) do @for %b in (a b c d) do @for %c in (a b c d) do @for %d in (a b c d) do @md %a\%b\%c\%d
...

经典啊~~感觉好拗口特别是 md a\b\c\d的循环
作者: ccwan     时间: 2007-1-11 21:08
难怪9527问我mj的事,真没想到,楼主居然和我当初问vkill和lxmxn的问题一样。^_^
作者: NaturalJ0     时间: 2007-1-11 23:01
lxmxn 这个 for 套的真凶。
上次写 FOR 里套 FOR 好像出了点奇怪的错,现在还有点后怕,搞得我现在只要 FOR 里套 FOR 就用 CALL 。

[ Last edited by NaturalJ0 on 2007-1-11 at 11:04 PM ]
作者: lxmxn     时间: 2007-1-12 01:45


  Quote:
Originally posted by NaturalJ0 at 2007-1-11 10:01:
lxmxn 这个 for 套的真凶。
上次写 FOR 里套 FOR 好像出了点奇怪的错,现在还有点后怕,搞得我现在只要 FOR 里套 FOR 就用 CALL 。

[ Last edited by NaturalJ0  ...


  汗一个。。用Call问题解决了吗?如果可以的话,可以将你上次写的代码贴上来看看。

作者: NaturalJ0     时间: 2007-1-16 21:34
代码我已经忘记了,但用法我还记得。
上次是这样用的
for ... %%i in .... do (
for /f "skip=%%i" %%j in ... do (...)
)

后来发现不能直接这么用,就改成 call %1 传参了。
作者: tghksj     时间: 2007-1-17 03:26
lxmxn 老师

代码太凶狠了,加分收藏了..
作者: tao0610     时间: 2007-1-17 07:15
可能还是递归比较好控制.要是层数多.岂不是要写很长!
@echo off&setlocal enabledelayedexpansion
:loop
for %%a in (a b c d) do (
setlocal
set/a num+=1
if !num! lss 4 call :loop %1\%%a
md %1\%%a 2>nul
endlocal
)
pause