Como renomear um conjunto de arquivos no prompt de comando do Windows?

1

Como renomear um conjunto de arquivos como este no prompt de comando do Windows?

nomes de arquivos atuais:

file111.txt  
file112.txt  
file113.txt  

após renomear nomes de arquivos:

file0111.txt  
file0112.txt  
file0113.txt  

Como posso conseguir isso?

    
por Siva 27.04.2011 / 12:34

1 resposta

2

Script em lote:

for %%f in (file???.txt) do call :ren %%f
goto :eof

:ren
    set name=%1
    ren "%name%" "%name:~0,4%0%name:~4%"

    :: Here, %name:~0,4% takes the first four characters, then you add a "0",
    :: and %name:~4% is everything after the fourth character.

Outra maneira possível, que verifica todos os arquivos que começam com file100.txt e assim por diante, pode ser mais lenta:

for /l %f in (100,1,999) do if exist "file%f.txt" ren "file%f.txt" "file0%f.txt"

(Se você quiser colocar isso em um arquivo de lote, você precisa alterar %f para %%f , o mesmo que no primeiro exemplo.)

    
por 27.04.2011 / 12:48