我有一些文件,每个文件都有不同的名称,但每个文件的末尾都具有相同的“语句”,如下所示:
flower-statement.mp3
leave-statement.mp3
ball-statement.mp3
goal-statement.mp3
所以我想删除这个: -statement
那可能吗?
为什么不像这样,没有任何特殊程序就只能批量处理呢?根据我的测试,这将完全按照您要查找的内容进行操作,即解析-statement
文件名的一部分,然后重命名每个文件名,而不会离开文件的其他部分。这将适用.mp3
于特定文件夹中的所有文件。
在下面的示例中,我C:\Users\User\Desktop\Test\*.mp3
将您的文件夹名称放在该位置。将其保存到文本文件,然后重命名为batch.cmd
或类似名称。然后只需双击运行它即可对该文件夹中的文件进行重命名,从而解析出其中的-statement
一部分。
您也可以使该脚本隐式运行,以运行将其复制到的目录,并仅从*.mp3
那里使用而不是完整路径。
显式脚本(指定* .mp3所在的目录)
@ECHO ON
FOR %%A IN ("C:\Users\User\Desktop\Test\*.mp3") DO (
CALL :RenameFiles "%%~A" "%%~NXA"
)
GOTO EOF
:RenameFiles
SET fname=%~2
SET renname=%fname:-statement=%
REN "%~1" "%renname%"
GOTO EOF
隐式脚本(复制到* .mp3所在的目录,然后从该目录运行)
@ECHO ON
FOR %%A IN ("*.mp3") DO (
CALL :RenameFiles "%%~A" "%%~NXA"
)
GOTO EOF
:RenameFiles
SET fname=%~2
SET renname=%fname:-statement=%
REN "%~1" "%renname%"
GOTO EOF
在文件扩展名之前将某些内容添加到重命名文件的末尾
(更改fpart
并mp3path
匹配您需要的内容以进行使用。这fpart
是您需要添加的内容,mp3path
也是这些文件所在的MP3
文件夹。)
注意: 这仍假定-statement
要删除文件名中的MP3文件。
专有脚本(带有解析文件名字符)
@ECHO ON
SET mp3path=C:\Users\User\Desktop\Test
SET fpart=_something
FOR /F %%A IN ('DIR /B "%mp3path%\*.mp3"') DO (
CALL :RenameFiles "%%~FPA" "%%~NA" "%%~XA"
)
GOTO EOF
:RenameFiles
SET fname=%~2
SET ext=%~3
SET renname=%fname:-statement=%
REN "%~1" "%renname%%fpart%%ext%"
GOTO EOF
EXCPLICIT SCRIPT(不分析,仅添加文件名字符)
@ECHO ON
SET mp3path=C:\Users\User\Desktop\Test
SET fpart=_something
FOR /F %%A IN ('DIR /B "%mp3path%\*.mp3"') DO (
CALL :RenameFiles "%%~FPA" "%%~NA" "%%~XA"
)
GOTO EOF
:RenameFiles
SET fname=%~2
SET ext=%~3
REN "%~1" "%fname%%fpart%%ext%"
GOTO EOF
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句