Board logo

标题: [文件操作] 批处理如何将多个子文件夹及里面的文件按顺序以指定字符串加递增数字重命名 [打印本页]

作者: yede57    时间: 2017-6-23 23:29     标题: 批处理如何将多个子文件夹及里面的文件按顺序以指定字符串加递增数字重命名

求大神实现文件一键排序命名
有这样一个文件夹X,下面有一些随机子文件夹,每个子文件夹下又有一些孙图片。
如:

随机名字文件夹A      |    下面有随机张随机名字的aaa.jpg  bb@kkhkhk.jpg ……nnnn.jpg
随机名字文件夹B      |    下面有随机张随机名字的aa1aqqwrqa.jpg  bbqrqwrk.jpg ……nnnqrwqrq11n.jpg
***
随机名字文件夹N      |    下面有随机张随机名字的sqeqeaa.jpg  bb@kqwqewkhkhk.jpg ……nnnzvxzvn.jpg

想要一个BAT文件,
第一步:将随机名字的文件夹统一改为我可以指定名字开头的文件夹 如:AA01文件夹  AA02文件夹  AA03文件夹  AA0n文件夹。(*AA*需要由我输入)
第二步:将文件夹下面的JPG文件统一修改为父文件夹名字的开头的递增名图片,如AA001文件夹下的图片名字由  AA001-1.jpg  AA001-2.jpg ,AA002文件夹下则为 AA02-1.jpg AA02-2.JPG。
第三步:输出X文件夹下的树目录至 mulu.xls与子文件夹平级。
作者: yede57    时间: 2017-6-24 12:03

多谢编辑帮忙编辑!
作者: yede57    时间: 2017-6-26 14:13

看来都很忙的,哪个大神可以帮忙下喔
作者: taofan712    时间: 2017-6-26 18:07

本帖最后由 taofan712 于 2017-6-26 19:18 编辑

我来助你一臂之力
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. echo;指定文件夹整理后的前缀
  5. set /p fre=
  6. set /a n=1000
  7. for /f %%a in ("%fre%") do (
  8.   for /f "delims=" %%b in ('dir /b /ad') do (
  9.   set /a n+=1
  10.   ren "%%~b" "%%~a!n:~-3!"
  11.   )
  12. )
  13. rem 先处理文件夹
  14. set n=0
  15. for /f "delims=" %%a in ('dir /b /ad') do (
  16.   pushd %%a
  17.   for %%b in (*.jpg) do (
  18.     set /a n+=1
  19.     ren "%%~b" %%~na-!n!%%~xb
  20.   )
  21.   set n=0
  22.   popd
  23. )
  24. rem 遍历文件夹,处理其中的jpg
  25. for /f "delims=" %%a in ("%cd%") do tree /f "%%~a">mulu.txt
  26. echo;处理完毕&pause>nul&exit /b
  27. rem 最后tree父目录
复制代码

作者: yede57    时间: 2017-6-26 18:48

谢谢taofan712,我试试
作者: yede57    时间: 2017-6-26 18:52

回复 4# taofan712


    哈哈,可以处理文件夹的名字修改,很便捷,但无法修改到子文件呢。
非常感谢。可以帮我修改下么?
作者: taofan712    时间: 2017-6-26 18:59

回复 6# yede57


    哪个位置有子文件夹,你题目里面的文件夹下面只有jpg
作者: yede57    时间: 2017-6-26 19:50

回复 7# taofan712


    哦,大神,就是处理不到里面的jpg,只能处理到文件夹的名字呢
作者: taofan712    时间: 2017-6-26 20:03

回复 8# yede57


    你自己观察调试,我这边测试的时候没问题。

C:\DOCUMENTS AND SETTINGS\ADMINISTRATOR\桌面\ASDF
│  09.bat
│  mulu.txt
│  文件夹整理.bat
│  
├─iii001
├─iii002
└─iii003
    │  iii003-1.jpg
    │  iii003-2.jpg
    │  
    ├─ad
    ├─复件 ad
    └─新建文件夹
            aaa.jpg
作者: yede57    时间: 2017-6-26 20:22

哦,好的,谢谢,奇怪了,只能将第一个文件夹的jpg修改4个。
我这里按排序命名都经常这样的。
作者: yede57    时间: 2017-6-26 20:23

回复 9# taofan712


   
哦,好的,谢谢,奇怪了,
只能将第一个文件夹的jpg文件修改XX001-1,修改到XX001-4,后面所有的都停止了。
我这里按排序生成名字经常这样的




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2