标题: [文件操作] 批处理能不能将每二十个文件移动一个文件夹? [打印本页]
作者: zhjok 时间: 2009-12-20 12:55 标题: 批处理能不能将每二十个文件移动一个文件夹?
有一个文件夹下有许多文件,能不能将每二十个文件移动一个文件夹,并且文件夹以 01 02 03 04 05 06……的形式命名,谢谢了
作者: keen 时间: 2009-12-20 16:13 标题: 回复 1楼 的帖子
根据你的实际情况,把代码中的路径“C:\Documents and Settings\Administrator\桌面\bathome\aaa”改变:
- @echo off&setlocal enabledelayedexpansion
- set n=101
- set "ph=C:\Documents and Settings\Administrator\桌面\bathome\aaa"
- md "%ph%\%n:~-2%"
- for /f "delims=" %%i in ('dir /b /a-d "%ph%"') do (
- set /a m+=1
- if !m! gtr 20 set /a n+=1&set m=1&md "%ph%\!n:~-2!"
- move "%ph%\%%i" "%ph%\!n:~-2!\"
- )
- pause
复制代码
[ 本帖最后由 keen 于 2009-12-20 16:23 编辑 ]
作者: neorobin 时间: 2009-12-20 20:30
用你的那个文件夹的全路径替换代码中的 D:\那个文件夹 不要加双引号, 即使路径中有空格- @echo off & setlocal enabledelayedexpansion
- (set theDir=D:\那个文件夹)&(set /a d=20)& cd /d "!theDir!"
- for /f "delims=" %%f in ('dir * /b') do (set /a dd=d/20+100)&(set dd=!theDir!\!dd:~-2!)&(md "!dd!" 2>nul)& move "%%~ff" "!dd!" & set /a d+=1
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |