中获取文件名不要扩展名_如何批量修改文件名,3s时间够不够

?点击关注Excel表哥公众号

上一篇推文我们介绍了如何批量获取同一文件夹下所有的文件名。

100210a7523e62b480ff8659afd87f35.png

▲点此图片回顾

很多读者获取到这些文件名之后的一种工作情形就是需要批量或者有针对性地修改这些文件的名称。

那么但凡是这类需要批量操作的重复工作,Excel擅长。

还是以上篇推文中PIC文件夹中的几十张图片为例,我们一起来操作:

01修改文件名称在示例文件中E列填入需要修改的文件名,为了省去大家填写时还需填写文件类型扩展名的麻烦,我把这步骤也用公式统一实现。

0295b3c3996b561bdf093a4133c40cb5.png

上图中F3单元格的公式为:
="REN"&CHAR(32)&""""&B3&""""&CHAR(32)&""""&E3&MID(B3,FIND(".",B3),99)&""""

当然,感觉公式太长也可以简写为:

="REN "&B3&" "&E3

不过这样就需要注意E列中的Rename名称要和B列中的扩展名一致。

将F列中公式生成的字符串Copy至一个该路径下新建的一个txt文档,保存后将txt后缀修改为.bat。例如下图示例:

490d49ed21edb6038eaba6a62b979235.png

02见证神奇的时刻双击这个bat文件,不要眨眼,注意看接下来发生了什么:

5efc84cbc523610523978f0b676a65ff.gif

只需要双击rename.bat这个文件,该文件夹路径下列表中所有的文件名就瞬间自动完成修改了。

我大致数了下3s时间足够了。

03实现原理介绍我们还是需要简单了解下实现的原理。别看上面的一行公式挺长,其实规则很简单,从Excel文件Copy至.bat文件中的命令实际上是Windows操作系统中的批处理脚本,英文名称叫Batch,扩展名.bat就是取了前3个字母。

REN就是Rename的缩写。它的语法规则及含义如下:

▼左右滑动查看完整代码

ren_[Drive:][path]_"Oldfilename"_"Newfilename"
[Drive:][path]是文件所在的路径,如缺省了就默认作用于它所在的当前文件夹。只是呢需要注意这里面有一些空格(红色标注显示),在实际运用时候经常有的读者忘记打空格,因此我才在公式中强制增加了空格,用F9试着预算一下就清楚了。
CHAR(32)   ->  " "
另外,这段公式还有一个设置目的是实现自动在新旧文件名前后增加双引号,因为正如上面的批处理语法说明,文件名需要用双引号括起来,否则一旦文件名中出现空格就无法识别分隔了。我也查询了一些类似的公众号文章介绍,大多数都漏掉了这一步操作,大家需要格外注意。另外一个技巧分享:在Excel中我们知道要在公式中连接文本,一般的作法就是将文本用英文的""括起来再和公式通过&符号连接即可。但是如果文本中本身就是要有""的话则需要通过下面的方式进行设置:
""""  -> 四个"会通过公式转化为一个"。

那么细心的朋友可能还会产生这样的疑问,既然Windows自带的批处理命名这么强大,是不是也有同样的办法实现批量获取某个路径下所有的文件名称列表清单呢?

是的,用BAT批处理命名也能实现,步骤如下:

  • 在需要提取的文件夹下新建一个txt文档,名称随意,例如DIR.txt。

  • 在txt文件中输入如下命令:

DIR_*.*_/B>_list.txt

▲注意空格不可缺少

  • 修改文件后缀并双击DIR.bat

  • 自动生成包含文件名列表的list.txt文件

这个小技巧是不是很nice呀,暂时用不到也没关系,大家可以先收藏起来,需要的时候就可以派上用场啦~建议读者朋友们将上次推送的文章连在一起阅读
[01] 如何批量获取同一文件夹下所有的文件名注:本公众号所载原创文章均为作者辛苦创作,转载请联系作者并标明出处。57e3333fc2dd1948112192031b6e8a73.pnga219cb41264b550483c9102968a18c6e.png扫码关注我们微信公众号:Excel表哥用Excel加速我们的工作和生活b04198a6845e66640b1ad7926e9fa8c5.png

处处留心皆学问,建议大家可以将这篇推文收藏,以备不时之需。

你点的每个“在看”我都认真当成了喜欢▼ aa00154f6be6940f609fee3599875199.png

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

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

相关文章

数据结构与算法--死磕二叉树

死磕二叉树 近一年都比较关注算法相关的知识,也刷了不少题,之前的文章中大多也是算法相关的文章,但是感觉每次遇到树相关的题型都不能应对自如,因此还是有必要在相关知识上下功夫,因此有此次总结,以下是所…

Jenkins 中以构建 Tag 来实现版本管理

好的工具和流程能使我们事半功倍,而这个过程是不断迭代和演进的。关于这一块的内容,之前写过几篇文章:在团队中使用GitLab中的Merge Request工作模式敏捷下的需求和代码分支管理不断进化的分支和需求管理现在又有了些新的变化和改进&#xff…

将字符串添加负数_Go语言实现LeetCode算法:8 字符串转整数

Go语言中文网,致力于每日分享编码、开源等知识,欢迎关注我,会有意想不到的收获!看到题目,是不是超级简单,用 strconv.Atoi 就可以了?题目当然不是这么简单的要求。1 题目描述实现atoi函数&#…

[Java基础]生产者和消费者模式概述与案例分析

代码如下: package BoxPack01;public class Box {private int milk;private boolean state false;public synchronized void put(int milk){if (state){try {wait();} catch (InterruptedException e) {e.printStackTrace();}}this.milk milk;System.out.println("送奶…

毕业4年年薪200万是怎样的一种体验?

之前的一篇文章提到过自己毕业4年,年薪就超过了200万。最近有很多读者问我是怎么实现的,过程中有哪些经验可以分享。说实话,这个话题不太想写,毕竟有炫耀嫌疑。不过问的人多了,发现大家对这个话题还是很关心。另外&…

自动控制原理第二版王建辉_王建辉自动控制原理配套题库名校考研真题课后答案资料课后习题章节题库模拟试题...

王建辉《自动控制原理》配套题库【名校考研真题+课后习题+章节题库+模拟试题】第一部分 名校考研真题 第1章 自动控制系统的基本概念 第2章 自动控制系统的数学模型 第3章 自动控制系统的时域分析 第4章 根轨迹法 第5章 频率法 第…

FluentAspects -- 基于 Fluent API 的 Aop

FluentAspects -- 基于 Fluent API 的 AopIntro上次我们做了一个简单的 AOP 实现示例,但是实现起来主要是基于 Attribute 来做的,对于代码的侵入性太强,于是尝试实现基于 Fluent API 的方式来做 AOP 。抽象 InterceptorResolver原来获取方法执…

[Java网络编程基础]InetAddress的使用

代码如下: package InetAddressPack;import java.net.InetAddress; import java.net.UnknownHostException;public class InetAddressDemo {public static void main(String[] args) throws UnknownHostException { // InetAddress address InetAddress.getByName(&qu…

文件夹复制 覆盖_软网应用:U盘即插即复制

虽然现在网盘非常普及,但是对于一些重要文件的同步,很多朋友仍然在使用U盘进行同步。常规的方法是在A电脑将文件复制到U盘,然后在B电脑插入U盘,再将需要同步的文件复制到B电脑。这种操作不仅效率低,而且容易漏掉文件。…

面向接口编程,你考虑过性能吗?

大家在平时开发中大多都会遵循接口编程,这样就可以方便实现依赖注入也方便实现多态等各种小技巧,但这种是以牺牲性能为代价换取代码的灵活性,万物皆有阴阳,看你的应用场景进行取舍。一:背景1. 缘由在项目的性能改造中&…

[Java网络编程]UDP通信程序练习

代码如下: package UdpPracticePack;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException;pub…

打造更好用的 EF 自动审计

打造更好用的 EF 自动审计Intro上次基于 EF Core 实现了一个自动审计的功能,详细可以参考 EF Core 数据变更自动审计设计,虽然说多数情况下可以适用,但是因为要显式继承于一个 AuditDbContextBase 或 AuditDbContext,所以对代码的…

[Java网络编程基础]UDP发送和接收数据

代码如下: package InetAddressPack;import java.io.IOException; import java.net.*; import java.nio.charset.StandardCharsets;public class SendDemo {public static void main(String[] args) throws IOException {DatagramSocket ds new DatagramSocket();byte[] bys …

从Copyright到Copyleft,聊聊版权与开源协议

4月26日是世界知识产权日,很多人或许会觉得这和软件开发没什么关系,但事实上,开源软件大多受到知识产权法中著作权法(Copyright,也称版权)的保护。开源软件虽说开放了源代码,但是用户在使用、修…

[Java网络编程基础]TCP发送和接收数据

代码如下: package ClientPack;import java.io.IOException; import java.io.OutputStream; import java.net.InetAddress; import java.net.Socket; import java.net.UnknownHostException;public class ClientDemo {public static void main(String[] args) throws IOExcept…

手机端适应_不轻易透露的超强技巧!详解iVX中怎样做设备自适应

"自适应网页设计"的概念2010年,Ethan Marcotte提出了"自适应网页设计"(Responsive Web Design)这个名词,指可以自动识别屏幕宽度、并做出相应调整的网页设计,自适应是为了解决如何才能在不同大小的…

五分钟了解dotnetcore配置框架

一、前言配置的本质就是字符串的键值对,微软的一系列接口其实就是对这些键值对字符串的抽象。二、基本类型2.1、Nuget包Microsoft.Extensions.Configuration.AbstractionsMicrosoft.Extensions.Configuration2.2、抽象接口IConfiguration提供了查询、设置配置项、监…

彩光和灰光模块_5G承载网主要光模块图谱

(一)5G承载光模块总览在光通信中,业务信息的传送与接收都是靠光模块来实现的。在发送端,光模块完成电/光转换,光在光纤中传输,然后在接收端实现光/电转换。可以说,没有光模块就没有光通信。在我…