2014-02-06 37 views
1

我可以使用下面的腳本我可以使用文件夾名稱和序列號批量重命名文件嗎?

@Echo OFF 

FOR /D /R %%# in (*) DO (
    PUSHD "%%#" 
    FOR %%@ in ("index*") DO (
     Echo Ren: ".\%%~n#\%%@" "%%~n#%%[email protected]" 
     Ren "%%@" "%%~n#%%[email protected]" 
    ) 
    POPD 
) 

Pause&ExiT 

重命名的所有目錄和子目錄中的文件有沒有修改腳本,它工作得很好,我在第二個答案的順序重命名文件時的方式目錄中有多個文件?

一樣,文件夾的名字是image,我想這些文件被命名爲image1.jpgimage2.jpg(保留擴展)..幫助是非常讚賞

+0

今後,嘗試不要使用html來格式化您的代碼示例。降價更簡單和首選http://stackoverflow.com/editing-help – bnjmn

+0

你有什麼特別的理由在循環變量名中使用#和@?他們混淆了代碼。 – foxidrive

+0

不,我發現代碼在這裏 - http://stackoverflow.com/questions/16266930/how-to-rename-files-in-folders-to-foldername-using-batch-file – ichayan

回答

1

試試這個:

@Echo OFF 
setlocal enabledelayedexpansion 
FOR /D /R %%# in (*) DO (
    PUSHD "%%#" 
    FOR %%@ in ("index*") DO (
     set /a "inc+=1" 
     Echo Ren: ".\%%~n#\%%@" "%%~n#!inc!%%[email protected]" 
     Ren "%%@" "%%~n#!inc!%%[email protected]" 
    ) 
    POPD 
) 

Pause&Exit 
+0

完美,它運作良好,謝謝。 – ichayan

+0

您可以接受答案,未來人們將立即知道這是值得一看的。 – foxidrive

+0

什麼不行? –

相關問題