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

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

求大神实现文件一键排序命名
有这样一个文件夹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与子文件夹平级。

多谢编辑帮忙编辑!

TOP

看来都很忙的,哪个大神可以帮忙下喔

TOP

本帖最后由 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父目录
复制代码
1

评分人数

    • yede57: 感谢给帖子标题标注[已解决]字样技术 + 1

TOP

谢谢taofan712,我试试

TOP

回复 4# taofan712


    哈哈,可以处理文件夹的名字修改,很便捷,但无法修改到子文件呢。
非常感谢。可以帮我修改下么?

TOP

回复 6# yede57


    哪个位置有子文件夹,你题目里面的文件夹下面只有jpg

TOP

回复 7# taofan712


    哦,大神,就是处理不到里面的jpg,只能处理到文件夹的名字呢

TOP

回复 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

TOP

哦,好的,谢谢,奇怪了,只能将第一个文件夹的jpg修改4个。
我这里按排序命名都经常这样的。

TOP

回复 9# taofan712


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

TOP

返回列表