Board logo

标题: [文件操作] 创建100个文件夹的方法 [打印本页]

作者: zqy    时间: 2008-10-14 22:54     标题: 创建100个文件夹的方法

创建100个文件夹的方法
我是这么想的

for /l %i in(1 1 9) do
  md %i
  cd %i
  for /l %a in(1 1 9) do
    md %a
  cd..

不知道对不对
作者: Batcher    时间: 2008-10-14 22:55

自己的测试结果如何呢?
作者: namejm    时间: 2008-10-14 23:14

  正确与否,测试便知,无需假借他人之手,否则,就有拿别人当小白鼠的嫌疑,更有懒于测试的嫌疑,这些都是不怎么受欢迎的。
作者: lixiaodaoaaa    时间: 2008-10-15 08:41     标题: 我有个问题。。问问

  1. @echo off
  2. for /l %%a in (1 1 100 ) do md %%a
  3. pause
复制代码

这样就可以轻松的创建文件夹了,刚才实验了是可以的
但是我下面的删除代码为什么不成功呢?
谁帮我解释下
  1. @echo off
  2. for /l %%a in (1 1 100 ) do md %%a
  3. rd %%a
  4. pause
复制代码

这个代码并不能删除 1到100这100个文件夹,甚为困惑,学批处理一年了
郁闷,这都不懂,大家知道我有多菜了吧。。汗



我测试下面的代码也不成功。。。就是开启了延迟变量的,也竟然不成功,难道不是延迟变量的原因,请求大家解释下

  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%a in (1 1 100 ) do md %%a
  3. rd %%a
  4. pause
复制代码
删除代码还得再for一次,才成功,汗。。必须这样吗?

  1. @echo off
  2. for /l %%a in (1 1 10 ) do md %%a
  3. for /l %%a in (1 1 10 ) do rd %%a
  4. pause
复制代码





[ 本帖最后由 lixiaodaoaaa 于 2008-10-15 08:49 编辑 ]
作者: huahua0919    时间: 2008-10-15 08:54

@echo off&setlocal enabledelayedexpansion

for /l %%a in (1 1 100 ) do md %%a
rd %%a
pause

你还是不熟悉for的用法。
在do后面的,只要和do在同一行,则属于for范畴,不在同一行的则不算,括号除外
所以你的命令 rd %%a 是无效的,应为根本就没有%%a这样的文件夹名
作者: pusofalse    时间: 2008-10-15 14:13

可以用变量来代替md或rd,举个例子
  1. @echo off
  2. set "ope=md"
  3. :lp
  4. for /l %%a in (1 1 100) do %ope% %%a
  5. pause
  6. if "%ope%" equ "md" set "ope=rd"&goto lp
复制代码
少了一个for,但多了if。有没有更好的方法。?
作者: lixiaodaoaaa    时间: 2008-10-15 16:29     标题: pursofalse多心了

谢谢pursofalse的解答。。
呵呵。。还有huahua0909
大噶懂了点。以后有什么问题再问,闪了
作者: zqy    时间: 2008-10-23 21:35

我不是要这个效果啊!!!
我是要十个文件夹,然后每个文件夹中间嵌套十个文件夹
作者: zqy    时间: 2008-10-23 22:09

找到了
for /l %%i in (1 1 10) do (
for /l %%j in (1 1 10) do md %%i\%%j
)
作者: jellyhk    时间: 2008-10-24 01:36

%%a 要跟for一起才是 100个




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2