2015-12-08 43 views
0

因此,我有很多的MP3文件我的Windows 10電腦上,我想重新命名爲適合的零前綴EG重命名爲「mysong1.mp3」到「mysong001.mp3」這批文件我發現,直到10日的文件精品工程:批處理文件重命名與一個數字與擬合00前綴

@echo off 
setlocal EnableDelayedExpansion 
set i=0 
for %%a in (*.mp3) do (
    set /a i+=1 
    ren "%%a" "mysong00!i!.new" 
) 
ren *.new *.mp3 

9號文件,我得到「mysong0010.mp3」,「mysong0011.mp3」等後和第99個文件「mysong00100.mp3」。我想要的是「mysong010.mp3」,「mysong100.mp3」等。我已經對批處理文件中的if語句和類似內容做了一些研究,但是我無法完全理解它。

所以我的問題是:我如何使它像我想要的那樣工作?

我不想使用某種第三方程序,我希望能夠自己做到這一點。

回答

3

只需稍作更改即可。

@echo off 
setlocal EnableDelayedExpansion 
set i=0 
for %%a in (*.mp3) do (
    set /a i+=1 
    set num=00!i! 
    ren "%%a" "mysong!num:~-3!.new" 
) 
ren *.new *.mp3 
+0

我接受答案似乎太快了。我究竟在哪裏放數字?它現在所做的是將它找到的第一個文件重命名爲「mysong.mp3」,然後無數次地返回「重複文件存在或文件無法找到」。我把「set num = 00!i!」在增加我之後並且替換我與您的發佈。 – Arrrow

+0

@Arrrow,更新您的原始代碼。 – Squashman

+0

這正是我所擁有的。仍然給我同樣的錯誤。 – Arrrow