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

[文件操作] [已解决]求助批处理按目录名称拆分成上下级文件夹,并移动文件

本帖最后由 akb4888 于 2021-7-19 20:29 编辑

各位前辈大佬,有礼了!
小弟目前有:
333-X32-1-18
333-X31-22-102
333-X32-1-1
这样的一批文件夹,我想将他们拆分成:
333\X32-1\18
333\X31-22\102
333\X32-1\1
这样的目录结构,并将原文件夹里的文件移动到最底层子目录
不知可否用批处理实现?请各位前辈指点一二,十分感谢!

回复 1# akb4888


    目前-的数量是固定的三个吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2# Batcher

管理员大大好,是的,“-”的数量是固定3个,只是每段的数字长度不固定。这个是不是涉及到更改目录名和文件移动的先后逻辑问题,没学多少基础,实在是想不明白。

TOP

@echo off
for /f "tokens=1-4 delims=-" %%i in ('dir/ad/b') do (
md "%%i\%%j-%%k\%%l\"
move "%%i-%%j-%%k-%%l\*.*" "%%i\%%j-%%k\%%l\"
rmdir "%%i-%%j-%%k-%%l"
)
pause
1

评分人数

    • akb4888: 技术过硬!乐于助人!技术 + 1

TOP

移动目录,比移动文件好些
  1. for /f "tokens=1-4 delims=-" %%a in ('dir /ad /b') do (
  2.     md %%a\%%b-%%c
  3.     move %%a-%%b-%%c-%%d %%a\%%b-%%c\%%d
  4. )
复制代码
1

评分人数

    • akb4888: 技术过硬!乐于助人!技术 + 1

TOP

回复 4# idwma


    多谢前辈!我原来是这个思路这么想的,但是就是写不出来,学习了!感谢!~

TOP

回复 5# newswan


    牛蛙!为啥没这么想过呢,,这就是人和人的差距吗……多谢大佬!这个确实很精练很实用了!

TOP

返回列表