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


如想把以下mkv文件改名为第01集-第10集然后再改为01-10

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

 

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

 新建txt文件并把以下代码拷贝(整体拷贝不用修改)进去:

@echo off
set /p str1= 请输入要替换的文件(文件夹)名字符串(可替换空格):
set /p str2= 请输入替换后的文件(文件夹)名字符串(若删除直接回车):
echo.
echo 正在操作中,请稍候……
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

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

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

 

最终效果:

 

进一步的,改成01-10,继续重复以上代码,输入,删掉‘第’再删掉‘集’。

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

 

原因:

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

解决办法:

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

 

效果如下:

 

2.如果再批量的把01-10改为第01集-第10集的批处理方法?

待解决。。。

3.批量修改文件后缀批处理方法

如把mkv文件改为txt文件命令:

ren  *.mkv   *.txt


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM