如何删除文件名中指定字符及其后符的bat命令?

我有很多srt文件,文件名中后面都有.zh,.zh后面有时还有长短不等的文字,如.zh-hans,.zh-GN,.zh-cf等等。我想找大神写一个bat,批量删除srt文件名中自.zh(包括.zh)和后面的文字,但保留srt扩展名

您可以使用以下的批处理脚本来实现批量删除.srt文件名中的.zh和后续文字:

@echo off

setlocal enabledelayedexpansion

rem 设置要处理的文件路径

set "folder=C:\path\to\your\srt\files"

rem 遍历文件夹中的所有srt文件

for %%F in ("%folder%\*.srt") do (

rem 获取文件名和扩展名

set "filename=%%~nF"

set "extension=%%~xF"

rem 删除.zh和后续文字

set "newname=!filename:.zh*=!"

rem 重命名文件

ren "%%F" "!newname!!extension!"

)

echo 批量删除.zh和后续文字完成。

pause

请将上述代码中的C:\path\to\your\srt\files替换为您实际的srt文件所在文件夹的路径。运行批处理脚本后,它会批量处理该文件夹中的所有srt文件,删除文件名中的.zh和后续文字,但保留.srt扩展名。

在运行批处理脚本之前,建议您在操作文件之前备份相关的srt文件,以防意外删除或重命名。

追问

没反应啊

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-06-03

Get-ChildItem -Path ".\*.srt" | % {Rename-Item $_.FullName $_.Name.Replace('.zh*', '')}

    将该文本文档另存为.bat文件,比如"rename_srt.bat"。

    双击运行该.bat文件,它将会批量重命名所有srt文件,并删除文件名中从“.zh”开始的所有字符,但保留原有的文件扩展名。

    请根据具体情况进行修改。此外,使用该脚本前建议先备份一下文件,以免误删或影响文件数据。

相似回答