批处理修改文件名名称
我有些文件名后缀为MP4,MP3的文件,一般为“绅士-art--薛之谦--art-743ef3fff1671d6102b892f1a5b29aee”,我想用批处批量处理它...
我有些文件名后缀为MP4,MP3的文件,一般为“绅士-art--薛之谦--art-743ef3fff1671d6102b892f1a5b29aee”,我想用批处批量处理它们,把它们最终修改成为“薛之谦 - 绅士”,因为是歌名,肯定会有不一样的中文名称;请问如何处理它?
我的思路是
第一步:先处理掉“--art-”以及后面的字符,全部删除掉(后缀名不变,跑两遍即可,一遍MP3,一遍MP4)
第二步:处理“-art--”,把“-art--”后面的名称放到最前面并且去掉“art--”,替换为“薛之谦-绅士””
第三步:加空格,处理“薛之谦-绅士”,替换为“薛之谦 - 绅士”
谢谢!!!!!!! 展开
我的思路是
第一步:先处理掉“--art-”以及后面的字符,全部删除掉(后缀名不变,跑两遍即可,一遍MP3,一遍MP4)
第二步:处理“-art--”,把“-art--”后面的名称放到最前面并且去掉“art--”,替换为“薛之谦-绅士””
第三步:加空格,处理“薛之谦-绅士”,替换为“薛之谦 - 绅士”
谢谢!!!!!!! 展开
展开全部
@echo off & title 批量重命名文件 By 依梦琴瑶
setlocal enabledelayedexpansion
::设置要处理的文件后缀
set Ext=*.mp3,*.mp4
for %%a in (%Ext%) do (
set "Str=%%~a"
for /f "tokens=1,2 delims=-" %%b in ("!Str:-art-=!") do (
if /i not "%%~xc"=="%%~xa" (
if exist "%%~c - %%~b%%~xa" (
echo 由于已存在 "%%~c - %%~b%%~xa",所以 "%%~a" 未被重命名。
) else (
ren "%%~a" "%%~c - %%~b%%~xa"
)
)
)
)
pause
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询