Respuestas:
for %a in (*) do ren "%a" "00_%a"
Notas:
for
No se recomienda el uso como se indica arriba.Use lo siguiente en un cmd
shell:
for /f "tokens=*" %a in ('dir /b') do ren "%a" "00_%a"
En un archivo por lotes (reemplace %
con %%
):
for /f "tokens=*" %%a in ('dir /b') do ren "%%a" "00_%%a"
Nota:
Es crítico que uses
FOR /F
y no lo simpleFOR
.Los
FOR /F
frunces el resultado completo de laDIR
orden antes de que comience la iteración, mientras que el sencilloFOR
comienza la iteración después de la memoria intermedia interna está llena, lo que añade un riesgo de cambiar el nombre del mismo archivo varias veces.
como lo aconsejó dbenham en su respuesta para agregar "texto" al final de varios nombres de archivo :
Para realizar este bucle For en carpetas (directorios) en lugar de archivos, simplemente incluya el /D
interruptor.
for /D %a in (*) do ren "%a" "00_%a"
De for /?
:
FOR / D% variable IN (set) DO comando [parámetros del comando]
If set contains wildcards, then specifies to match against directory names instead of file names.
ren
funciona en carpetas. La limitación es que "no puede especificar una unidad o ruta diferente para el destino.
Ren
.
for /d
que también puede tener el problema de tratar de procesar valores varias veces (también vea mi respuesta).