批量删除多个文件名中多余的字符

2024-12-05 06:13:56
推荐回答(4个)
回答1:

用以下代码做一个bat批处理文件,文件名任意,可以是:

代码如下:

@echo off
set /p str1= 请输入替换前的文件(夹)名中的字符串(空格亦适用):
set /p str2= 请输入替换后文件(夹)名中的字符串(删除请直接回车):
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
exit

做好后把这个批处理放到你要修改文件名的文件夹内

点击运行运行:第一行输入“馨香 ”,你的情况第二行直接回车:

然后就OK了

如果是要替换成什么字符,第二行打入即可。

PS:这个也适用于文件夹名的修改哟。且可以同时修改文件名以及所有子文件夹名,包括有所子文件夹内的文件名,同步一次修改完。

希望对你有用

回答2:

以在WIN10系统的EXCLE中操作为例,当EXCEL多个表单中有相同部分需要删除时。可以使用其自带的查找与替换功能,输入查找的相同内容,然后替换为空置。再勾选替换范围为工作簿即可,具体的操作方法如下:

1、在电脑上打开一个EXCEL文件进入。

2、进入到该文件以后可以看到工作表1有多个内容。

3、工作表2和2同样也有多个内容。

4、点击任意一个工作表的查找和选择,再点击替换按钮进入。

5、在出现的对话框中输入查找内容张三,替换为空置,然后点击选项按钮。

6、在出现的选项中选择范围为工作簿,点击全部替换。

7、此时可以看到该文件中的多个表单均完成了替换。

8、点击工作表1即可看到相同的张三已经被批量删除了。

9、同样该工作表2之中的相同内容也已经被批量删除了。

回答3:

帮你粘贴下-———-----------------------我是分割线--------------------------------------如何批处理重命名文件
生活中遇到的问题要想办法解决,才能转化为经验。

我们经常会遇到要把一批没有规律的文件命名成有规律的文件名,或者将一批有规律的文件名重命名成另一批有规律的文件名,用批处理会帮你节省很多时间。今天我遇到的情况是把一批文件夹需要命名成我想要的文件名,这些一一对应的文件名已经事先获得。
在网上找了一些方法,结合自己的实践我把我的学习过程介绍下。
在我的D:\Program Files\download\data文件夹下有229个用纯数字命名的文件夹,这些文件夹名称需要被重命名为新的文件夹名称,新旧文件夹名称的对应关系已经知道。

1: 点击Windows左下角的“开始”菜单,选择“运行”,输入 cmd ,回车进入命令行。

2: 用 cd 命令进入到你想批量修改文件名的文件夹目录。比如这里,我想要进入D盘中的D:\Program Files\download\data文件夹。
输入: chdir /D D:\Program Files\download\data //用help cd可以查看cd指令的相应帮助信息

3: 输入 dir /b 可以看见当前文件夹目录下面全部文件夹的列表。
输入: dir /b > data.xls 将的列表输出到data.xls电子表格。 //用excel是为了方便将新旧文件夹名称之间的一一对应关系进行处理,后面会了解

4: 有趣的东西现在才开始。打开Excel或Google Docs电子表格,你会在第一列中看到刚才文件列表。

5: 在旁边空白的列中,添加一个相应的function函数公式——例如,使用SUBSTITUTE可以来修改文件名中指定的字符,使用 CONCATENATE() 和 DATE() 可以在文件名中加上日期,等等。
我的情况是第一列A是我的文件列表,我从另外一个excel文件复制B、C、D列信息到data.xls,我的目标是将A列的文件名称命名成B_CD(字符串相加)形式,(加入A1是12345,B1是001,C1是12345,D1是浙江大学,重命名后的文件名称应为001_12345浙江大学)在空白列E的第一行中输入:=CONCATENATE(B1, "_", C1,D1)

6: 选中E1单元格右下角的+加号,向下拖动,这样我们的公式将被复制应用到所有行。这么做的目的是为了获得我想要的文件名称。
现在,你原来的文件名在A列,你期望替换成的文件名在E列——我们现在要将它们转化为DOS中的rename命令。在新的空白列比如F列,输入Excel公式:
=CONCATENATE("ren ",A1, " ", E1) //ren是dos中的重命名指令,A1是原文件名称,E1是目标文件名称
点击函数的对号,确认输入无误后,拖到右下角的+加号,应用到所有行。

7: 选中F列,点击“复制”,在D:\Program Files\download\data文件夹目录下,创建一个rename.bat文件,将复制的内容粘贴进去。可以看到rename这个批处理文件中的第一行内容是“ren 12345 001_12345浙江大学”,后面同样是这种格式。

8: D:\Program Files\download\data下输入命令rename.bat,然后回车,会发现目录下的文件名已经按照你期望的方式被修改了。但是还有一部分文件夹名称没有改变,重新查看批处理文件中的内容,发现一些新文件夹名称中含有空格或者其他文件夹命名中的非法字符,把空格以及非法字符去掉后重新运行就成功了。

回答4:

一个使用起来超简单的软件就能完成你想要的改名:拖把更名器 一个简单易用的文件更名工具,功能主要有:基于资源管理器外壳扩展,支持通配符更名,支持移除 ID3v1 ID3v2 标签,支持序号更名,支持从文本文件调入文本更名,结合资源管理器的拖放操作。结合资源管理器右键菜单,支持 MP3/RM/RMVB/WMA/APE/OGG/WMV/ASF 标签更名,文件名、标签内码转换、繁简转换、汉字转拼音。支持序号、调用外部文本文件更名、网页文件标题提取更名、正则表达式、元变量、自动预览、撤消等。
以下网址可以下载: http://dl.pconline.com.cn/html_2/1/68/id=5709&pn=0.html