标题: [文件操作] 【已解决】批处理如何根据文件夹名移动文件并命名文件夹? [打印本页]
作者: 001011 时间: 2013-11-9 19:10 标题: 【已解决】批处理如何根据文件夹名移动文件并命名文件夹?
本帖最后由 001011 于 2013-11-9 23:18 编辑
E:.
├─XMPG-1988-0001-01-01
├─XMPG-1988-0001-02-01
├─XMPG-1988-0001-03-01
├─XMPG-1988-0002-01-01
├─XMPG-1988-0002-02-01
上面是文件夹的目录树
麻烦老师帮忙
根据文件夹名字中的四位序号生成文件夹
比如:XMPG-1988-0001-01-01
生成0001的文件夹、再在0001的文件夹下建立1的文件夹、然后把XMPG-1988-0001-01-01的文件夹剪切到1李面 并命名为1
XMPG-1988-0001-02-01
生成0001的文件夹、再在0001的文件夹下建立2的文件夹、然后把XMPG-1988-0001-02-01的文件夹剪切到2里面 并命名为1
XMPG-1988-0003-01-01
生成0001的文件夹、再在0001的文件夹下建立3的文件夹、然后把XMPG-1988-0001-03-01的文件夹剪切到3里面 并命名为1
目录树为:
E:.
├─0001
│ ├─1
│ │ └─1
│ ├─2
│ │ └─1
│ └─3
│ └─1
├─0002
│ ├─1
│ │ └─1
│ └─2
│ └─1
依此类推
非常感谢
作者: apang 时间: 2013-11-9 20:49
- @echo off & setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /ad/b XMPG-????-????-??-??') do (
- for /f "tokens=3-5 delims=-" %%a in ("%%i") do (
- set /a b=1%%b-100,c=1%%c-100
- md "%%a\!b!\" 2>nul
- move /y "%%i" "%%a\!b!\!c!"
- )
- )
- pause
复制代码
作者: 001011 时间: 2013-11-9 23:18
非常感谢 完全达到目的了 呵呵
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |