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


为什么不能直接用dir?
如果要排除文件夹,可以用:
  1. dir /b /a-d
复制代码

TOP

如果有170个文件,那么自动建立几个文件夹,并且每个文件夹精确导入几个文件?

TOP

确实是不会呀,大神,帮帮忙吧!!!!!

TOP

本帖最后由 cjiabing 于 2012-2-23 13:11 编辑

回复 3# 33453506
代码有点复杂,可能没空弄,我在弄其他事情。提供点思路:
1、获得当前目录层所有文件 dir /b *.*    文件夹不算在内。文件的个数统计办法,边搜索边统计可以用set /a num+=1,我更习惯在事后用findstr /n。
2、如何分配18个?你可以使用十八的倍数来判断,这个稍微难点。
  1. @echo off&setlocal enabledelayedexpansion
  2. ::设置要建立的文件夹顺序,Newp.txt是当前目录的所有文件。
  3. cd.>Newp.txt
  4. dir /b *.*>>Newp.txt
  5. set newf=0
  6. set num=0
  7. md New0
  8. for /f "tokens=*" %%a in (Newp.txt) do (
  9.     if !num! == 18 set num=0&set /a newf+=1&md New!newf!
  10.     copy %%a New!newf!&set /a num+=1
  11. )
复制代码

————————————————————
我自己试了下,不能直接用dir,先转个txt。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

对对对,版主大神,就是这个意思!!!!!!在线等您答复!

TOP

你的意思是不是“自动建立新文件夹并将当前目录所有文件分配到新建文件夹中每个文件夹分到18个?”
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

返回列表