批量删除/修改文件名中的某些字符串

问题解决

1.首先要批处理文件(夹),放在同一文件目录下。如:

2.在该目录下,新建文本文件,输入以下代码,如:

set /p str1= 请输入要替换的文件(文件夹)名字符串(可替换空格):

set /p str2= 请输入替换后的文件(文件夹)名字符串(若删除直接回车):

for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (

if "%%~nxa" neq "%~nx0" (

call set "name=%%name:%str1%=%str2%%%"

setlocal enabledelayedexpansion

ren "!file!" "!name!!extension!" 2>nul

3.修改文本文件.txt后缀名为.bat。

4.点击运行,输入要替换的文件(夹)中的字符串,和要替换后的字符串。(若想删除直接回车)如:

最终效果:

备注:

对于运行.bat文件,出现中文提示字符乱码问题,如:

原因:

编辑批处理文件时,以ANSI方式编辑。若以别的方式(如UTF-8)编辑了批处理,需转换成ANSI格式即可。

解决办法:

windows自带的记事本保存(另存为)文件时即可选择编码方式。

效果如下:

posted @ 2023-05-29 16:09  yangstar  阅读(929)  评论(0编辑  收藏  举报