找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 21020|回复: 4

[文本处理] [已解决]请帮忙BAT脚本将文件夹和所有子文件夹中的文件名批量修改!谢谢!

[复制链接]
发表于 2022-9-16 14:31:42 | 显示全部楼层 |阅读模式
先谢谢帮忙的大佬!
我这边有个文件夹,文件夹下有很多子文件夹,我想将这些文件夹和子文件夹中的所有文件的文件名称都批量修改一下名字;
文件名的原格式为:
0+-6777665-62-43-96012438-2022-02-05-xxxx.jpg
120+-21371335-40-23-86602754-2020-12-28-yyy.jpg
3420+-2032-34-73-26747973-2012-04-23-aasaldfa.jpg
想要将上方文件名中的‘红色部分的数字’和‘蓝色部分的数字’的位置互换一下,即将文件名中符号‘+-’到‘-’之间的数字与后面一个‘-’之间的数字的位置更换一下,

例1:0+-6777665-62-43-96012438-2022-02-05-xxxx.jpg
改成:0+-62-6777665-43-96012438-2022-02-05-xxxx.jpg

例2:120+-21371335-40-23-86602754-2020-12-28-yyy.jpg
改成:120+-40-21371335-23-86602754-2020-12-28-yyy.jpg

例3:3420+-2032-34-73-26747973-2012-04-23-aasaldfa.jpg
改成:3420+-34-2032-73-26747973-2012-04-23-aasaldfa.jpg

请大佬帮忙弄个可以直接执行的脚本,万分感谢!!
发表于 2022-9-16 14:59:04 | 显示全部楼层

  1. for /f "tokens=1-3*delims=+-" %a in ('dir/b^|findstr "^[0-9]*+-[0-9]*-[0-9]*-[0-9]*-[0-9]*-[0-9]*-[0-9]*-[0-9]*-.*jpg$"')do mvoe /y "%a+-%b-%c-%d" "%a+-%c-%b-%d"
复制代码
 楼主| 发表于 2022-9-16 15:20:53 | 显示全部楼层
回复 2# hfxiang


    大佬,测试了,没有效果
发表于 2022-9-16 15:28:42 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%i in ('dir /s /b /a-d *+-*.jpg') do (
  3.     for /f "tokens=1-3* delims=-" %%a in ("%%~nxi") do (
  4.         ren "%%i" "%%a-%%c-%%b-%%d"
  5.     )
  6. )
  7. pause
复制代码
 楼主| 发表于 2022-9-16 15:31:39 | 显示全部楼层
回复 4# qixiaobin0715


    谢谢大佬!!可以用!!大佬牛逼!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 19:04 , Processed in 0.018378 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表