如何批量更改很多个文件夹里的文件名中包含文件夹名?

news2024/9/23 13:26:00

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

问题描述

  例如:文件夹11-11-1里面的文件夹里有0001.jpg、0002jpg、0003jpg…等很多个文件,文件夹11-11-2里也是有0001.jpg、0002jpg、0003jpg…等很多个文件,文件夹11-11-3里也有0001.jpg、0002jpg、0003jpg…等很多个文件,如何批量的把这些文件夹里的文件改成11-11-1-0001.jpg、11-11-1-0002.jpg、11-11-1-0003.jpg,下一个文件夹11-11-2-0001.jpg、11-11-2-0002.jpg、11-11-2-0003.jpg,以此类推,仅使用Windows命令行脚本;注意:一个文件夹里可能有几百张jpg文件,第999个文件的名字就是0999.jpg,不一定都包含000

如上问题有来自我自身项目开发,有的收集网站,有的来自读者,如有侵权,立马删除。

解决方案

  如下是上述问题的解决方案,仅供参考:

  要使用Windows命令行批量重命名文件夹中的文件,您可以编写一个简单的批处理脚本(batch script)。以下是一个示例脚本,它将遍历指定目录下的所有文件夹,并在每个文件夹中重命名文件,将文件夹名添加到文件名前。

  请按照以下步骤操作:

  1. 打开记事本或任何文本编辑器。
  2. 将以下代码复制并粘贴到文本编辑器中:
@echo off
setlocal enabledelayedexpansion

:: 设置包含子文件夹的根目录路径
set "root_dir=C:\path\to\your\root\directory"

:: 切换到根目录
cd /d "%root_dir%"

:: 遍历根目录下的所有文件夹
for /d %%i in (*) do (
    echo Processing directory: %%i
    :: 切换到当前文件夹
    cd "%%i"
    
    :: 初始化文件计数器
    set "file_count=1"
    
    :: 遍历当前文件夹中的所有.jpg文件
    for %%j in (????.jpg) do (
        :: 重命名文件
        ren "%%j" "%%~ni-%file_count%.jpg"
        set /a file_count+=1
    )
    
    :: 重置文件计数器
    set "file_count=1"
    
    :: 遍历当前文件夹中的所有不包含扩展名的文件(如0002jpg)
    for %%j in (*) do (
        if "!file_count!" lss 10 (
            ren "%%j" "0%%~ni-000%file_count%.jpg"
        ) else if "!file_count!" lss 100 (
            ren "%%j" "0%%~ni-00%file_count%.jpg"
        ) else if "!file_count!" lss 1000 (
            ren "%%j" "0%%~ni-0%file_count%.jpg"
        ) else (
            ren "%%j" "%%~ni-%file_count%.jpg"
        )
        set /a file_count+=1
    )
    
    :: 切换回根目录
    cd ..
)

echo Done.
pause
  1. C:\path\to\your\root\directory 替换为您的根目录路径。
  2. 保存文件为 rename_files.bat(或任何您喜欢的名称,但确保它是批处理文件)。
  3. 双击运行该批处理文件或在命令行中运行它。

这个脚本会做以下事情:

  • 切换到您指定的根目录。
  • 遍历根目录下的所有子文件夹。
  • 在每个子文件夹中,先重命名所有以四位数字结尾的.jpg文件,然后重命名所有其他文件,将文件夹名和文件序号添加到文件名前。
  • 文件序号根据文件在文件夹中的位置自动增加。

  请注意,这个脚本假设您的文件名格式是连续的数字,如果文件名不连续或有其他特殊情况,可能需要对脚本进行相应的调整。在运行此脚本之前,请先在小范围内测试以确保它按预期工作。

  希望如上措施及解决方案能够帮到有需要的你。

  PS:如若遇到采纳如下方案还是未解决的同学,希望不要抱怨&&急躁,毕竟影响因素众多,我写出来也是希望能够尽最大努力帮助到同类似问题的小伙伴,即把你未解决或者产生新Bug黏贴在评论区,我们大家一起来努力,一起帮你看看,可以不咯。

  若有对当前Bug有与如下提供的方法不一致,有个不情之请,希望你能把你的新思路或新方法分享到评论区,一起学习,目的就是帮助更多所需要的同学,正所谓「赠人玫瑰,手留余香」。

☀️写在最后

  ok,以上就是我这期的Bug修复内容啦,如果还想查找更多解决方案,你可以看看我专门收集Bug及提供解决方案的专栏《CSDN问答解惑-专业版》,都是实战中碰到的Bug,希望对你有所帮助。到此,咱们下期拜拜。

码字不易,如果这篇文章对你有所帮助,帮忙给bug菌来个一键三连(关注、点赞、收藏) ,您的支持就是我坚持写作分享知识点传播技术的最大动力。

同时也推荐大家关注我的硬核公众号:「猿圈奇妙屋」 ;以第一手学习bug菌的首发干货,不仅能学习更多技术硬货,还可白嫖最新BAT大厂面试真题、4000G Pdf技术书籍、万份简历/PPT模板、技术文章Markdown文档等海量资料,你想要的我都有!

📣关于我

我是bug菌,CSDN | 掘金 | InfoQ | 51CTO | 华为云 | 阿里云 | 腾讯云 等社区博客专家,C站博客之星Top30,华为云2023年度十佳博主,掘金多年度人气作者Top40,51CTO年度博主Top12,掘金/InfoQ/51CTO等社区优质创作者;全网粉丝合计 20w+;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试真题、4000G PDF电子书籍、简历模板等海量资料,你想要的我都有,关键是你不来拿。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1915576.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【论文速读】《面向深度学习的联合消息传递与自编码器》

这篇文章来自华为的渥太华无线先进系统能力中心和无线技术实验室,作者中有大名鼎鼎的童文。 一、自编码架构的全局收发机面临的主要问题 文章对我比较有启发的地方,是提到自编码架构的全局收发机面临的主要问题: 问题一:基于随…

Nature Renderer 2022(植被渲染工具插件)

渲染大量详细的植被。 自然渲染器通过替换Unity的默认地形细节和树系统来提高植被渲染的质量。一切都适用于现有数据:使用相同的草地、植被和树木,并保留现有地形。我们只是升级您的渲染器。 Unity验证的解决方案 Nature Renderer受到25000多名开发人员的信任,是Unity验证的…

洛谷P1498 南蛮图腾[递归好题]

南蛮图腾 题目背景 自从到了南蛮之地,孔明不仅把孟获收拾的服服帖帖,而且还发现了不少少数民族的智慧,他发现少数民族的图腾往往有着一种分形的效果,在得到了酋长的传授后,孔明掌握了不少绘图技术,但唯独…

鼠标哪款好用?2024年选这几款鼠标不会出错

鼠标可是我们电脑的好伙伴,它能大大提高我们的工作效率。现在,无线鼠标变得越来越受欢迎,因为没有乱七八糟的线缆,用起来既方便又省空间。对于爱玩游戏的朋友们来说,挑选一个称心如意的鼠标可是件头疼的事。别急&#…

蓝牙控制小车

demo.main.c motor.c uart.c motor.h uart.h 实物图

c++:面向对象的继承特性

什么是继承 (1)继承是C源生支持的一种语法特性,是C面向对象的一种表现 (2)继承特性可以让派生类“瞬间”拥有基类的所有(当然还得考虑权限)属性和方法 (3)继承特性本质上是为了代码复用 (4)类在C编译器的内部可以理解为结构体,派…

初学SpringMVC之 RestFul 风格、重定向和转发

RestFul 风格改变 URL 形式 比如之前是:http://localhost:8080/add?a1&b2 现在是:http://localhost:8080/add/a/b(全是斜杠) package com.demo.controller;import org.springframework.stereotype.Controller; import org…

鸿蒙系统创建签名文件及使用创建签名文件打包并安装

* 第一步 第二步:创建.p12文件,点击New如果有的话就Choose Existing 填好下面信息 点击Next进入到下面界面 开始生成csr文件如下图 点击OK–>Finish 文件保存在了下面目录 第三步 1.访问华为开发者平台,登录开发者账号,进…

应急响应-ELK日志分析系统

🎼个人主页:金灰 😎作者简介:一名简单的大一学生;易编橙终身成长社群的嘉宾.✨ 专注网络空间安全服务,期待与您的交流分享~ 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️ 🍊易编橙终身成长社群&#…

昇思25天学习打卡营第15天|基于 MindSpore 实现 BERT 对话情绪识别

文章目录 昇思MindSpore应用实践1、基于 MindSpore 实现 BERT 对话情绪识别BERT 模型简介数据集数据加载和数据预处理 2、模型训练模型验证 3、模型推理 Reference 昇思MindSpore应用实践 本系列文章主要用于记录昇思25天学习打卡营的学习心得。 1、基于 MindSpore 实现 BERT…

尚品汇-(十六)

商品详情功能开发 (1)搭建service-item 点击service,选择New–>Module,操作如下 修改配置pom.xml 添加配置文件bootstrap.properties spring.application.nameservice-item spring.profiles.activedev spring.cloud.nacos.discovery.se…

centOS79中安装nginx12.15

##red## 🔴 大家好,我是雄雄,欢迎关注微信公众号,雄雄的小课堂。 前言 装了这么多,发现Nginx是最简单的,一次性就搞定了。下面我们来看看如何安装 安装Nginx 安装gcc-c编译器 分开运行: yum…

医疗机器人中的具身智能进展——自主超声策略模型的任务编码和局部探索

医疗机器人一直是具身智能的研究热点。医学图像、医疗触诊、血压血氧、心率脉搏和生物电信号等多模态生物医学信息,不断丰富着医疗机器人的感知范畴。 自主超声 “自主超声”属于具身智能医疗机器人领域中话题度较高的研究方向。作为临床检查的重要手段之一&#…

27. 738.单调递增的数字,968.监控二叉树,贪心算法总结

class Solution { public:int monotoneIncreasingDigits(int n) {string strNum to_string(n);// flag用来标记赋值9从哪里开始// 设置为这个默认值,为了防止第二个for循环在flag没有被赋值的情况下执行int flag strNum.size();for(int i strNum.size() - 1; i &…

FOLANNIC FD31 UPS工作原理介绍

1.1简介 FOLANNIC FD31系列UPS系工业级电厂型不间断电源,是为重要负载提供不受电网干扰、稳压、稳频的电力供应的电源设备,在市电掉电后,UPS可给负载继续提供一段时间供电,此系列UPS采用带输出隔离变压器的高频双变换结…

多头注意力的公式理解

多头注意力 (Multihead Attention) 多头注意力是一种通过并行使用多个注意力机制来增强模型能力的方法。每个注意力机制被称为一个“头”(head)。这种机制使得模型可以在不同的子空间中并行计算注意力,从而捕捉输入数据中不同范围的依赖关系…

java.lang.NullPointerException: null cannot be cast to non-null type kotlin.Int

java.lang.NullPointerException: null cannot be cast to non-null type kotlin.Int fun main(args: Array<String>) {var any1: Any?any1 nullval n1 any1 as? Int ?: -2024println(n1)kotlin.runCatching {var any2: Any?any2 nullval n2 any2 as Intprintln(…

【Linux】IP地址与主机名

文章目录 1.IP地址2.特殊IP地址3.主机名4.域名解析 1.IP地址 每一台联网的电脑都会有一个地址&#xff0c;用于和其它计算机进行通讯 IP地址主要有2个版本&#xff0c;V4版本和V6版本 IPv4版本的地址格式是&#xff1a;a.b.c.d,其中abcd表示0~255的数字&#xff0c;如192.168.…

论文翻译 | (TAKE A STEP BACK) 后退一步:在大型语言模型中通过抽象来调用推理

摘要 我们介绍了STEP-BACK提示&#xff0c;这是一种简单的提示技术&#xff0c;使LLM能够进行抽象&#xff0c;从而从包含特定细节的实例中派生高级概念和第一原则。使用概念和原则来指导推理&#xff0c;LLM显着提高了他们遵循正确推理路径的能力。我们使用PaLM-2L、GPT-4和Ll…

Linux:进程池制作(基于匿名管道和命名管道两个版本)

Linux&#xff1a;进程池制作 & 匿名管道 & 命名管道 前言一、匿名管道制作进程池一、进程池框架二、创建管道、创建进程、工作进程执行任务2.1 创建管道、创建进程 2.2 工作进程执行任务三、主进程向子进程发送任务3.1 任务封装3.2 主进程向子进程发送任务 四、回收资…