[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

批处理创建100个文件名不含5的文件夹

说明:题目出自随风

如题:
    创建100个文件夹,文件名不能含有5字.

  就是说创建100个文件夹.文件夹的名字中不能含有5字.
  而且必须是100个,不能多也不能少.
要求:
   代码越简洁越好.
   方法不限,高效,简洁为最佳答案.....

没有人回答吗。。。管理员应该公布一下自己的想法呀。。。

TOP

  1. for /l %%i in (2,2,200) do md d:\1\%%i
复制代码

TOP

回复 3楼 的帖子

会出现 50 52 54 。。。。。150 152 154 156 。。。。。。。。
技术问题请到论坛发帖求助!

TOP

不好意思  忽视了这个问题了

TOP

for /l %%a in (1 1 121) do md %%a
ping /n 4 127.1>nul
for /f "tokens=*" %%a in ('dir /b ^| find "5"') do rd %%a

TOP

偶数行的固然能够解决问题,但是效率不是最高的...

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :loop
  4. set a=!random:5=!
  5. if not defined !a! (
  6. set !a!=a&md !a!
  7. set /a c+=1
  8. if !c! lss 100 goto loop)
复制代码
应该还有更简洁更高效的。
静水流深...

TOP

  1. @echo off
  2. :0
  3. set /a c+=1
  4. :1
  5. call md %random:5=%0
  6. if %c% equ 100 exit
  7. goto %errorlevel%
复制代码
这个似乎好些了。
静水流深...

TOP

呵呵,看似容易。。作起来也费脑筋啊。。。
目前最简洁,最高效的代码是 49字节,并且不能省略屏蔽命令回显功能。
技术问题请到论坛发帖求助!

TOP

49字节...真的很难。是用到for命令么?
不如让大伙学习一下吧。
暂时想到最简的是下面这个。
  1. :0
  2. @md %random:5=%0&&set/ac+=1,a=c/100
  3. @goto %a%
  4. :1
复制代码

[ 本帖最后由 梦想种子 于 2008-4-20 23:51 编辑 ]
静水流深...

TOP

随风兄的代码指的是这个么?
  1. for /l %%i in (1 1 100) do call md %%random:5=%%
复制代码

TOP

嗯。加了@之后就刚好49字节。
不过这有两个未妥的地方。
1、若随机数为5555,文件夹名为空,出错。
2、若随机数出现类似1053和1503等数,就会缺建文件夹。
静水流深...

TOP

回复 12楼 的帖子

13 楼 梦想种子 说的对,
并且加了@符号后就不止 49 字节了,
还有就是上面的代码的效率不够高。。

创建100个不含5的文件夹
算得上简洁,高效的代码,至少有三个. 长度分别是:78字节,62字节,49字节。
大家再想想,其实只是个思路问题,与bat技术水平没多大关系。。。
呵呵。。
   娱乐。。。。。

[ 本帖最后由 随风 于 2008-4-21 19:13 编辑 ]
技术问题请到论坛发帖求助!

TOP

@echo off
setlocal  ENABLEDELAYEDEXPANSION


for /l %%a in (1 1 100) do  (

set b=%%a
md !b:5=v!
)

[ 本帖最后由 bater 于 2008-9-11 14:50 编辑 ]

TOP

返回列表