5楼的版本非常适合我的需求,比较简洁直接,非常感谢!我的方案复杂一些,贴出来参考一下:
for i in range(21):
prefix = f"3({i})-"
script_content = f"""@echo off
set "prefix={prefix}"
rem 处理 .mp3 文件
for %%i in (*.mp3) do (
set "filename=%%~ni"
setlocal enabledelayedexpansion
if "!filename:~0,{len(prefix)}!" neq "%prefix%" (
ren "%%i" "%prefix%%%i"
)
endlocal
)
rem 处理 .srt 文件
for %%i in (*.srt) do (
set "filename=%%~ni"
setlocal enabledelayedexpansion
if "!filename:~0,{len(prefix)}!" neq "%prefix%" (
ren "%%i" "%prefix%%%i"
)
endlocal
)"""
script_name = f"3({i})-.bat"
with open(script_name, "w", encoding="ansi") as f:
f.write(script_content)
print(f"已生成脚本: {script_name}")
保存为py文件,运行后生成 3(0).bat,3(1).bat,3(2).bat,...,3(20).bat 共21个批处脚本文件. |