Ms-Dos - Renombrar archivos

 
Vista:

Renombrar archivos

Publicado por mrproper (3 intervenciones) el 10/03/2009 19:53:06
Hola, a ver si alguien me echa una mano. No hago más que probar pero no me sale.

Tengo ficheros nombrados así:

Dibujo01.jpg
Dibujo02.jpg
...
Dibujo99.jpg

y quiero convertirlos en:

0001.jpg
0002.jpg
...
0099.jpg

Muchas gracias por vuestra ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Renombrar archivos

Publicado por Antoni Masana (295 intervenciones) el 11/03/2009 09:25:56
Esto es sencillo pero Funciona hasta 1000 ficheros (del 000 al 999)

@echo Off

dir *.jpg /B >aa.txt
Listmod /N000 echo ren $1 0$#.jpq <aa.txt >cc.bat
call cc.bat
del cc.bat
del aa.txt

El LISTMOD lo podras bajar de la WED si lo buscas con el GOOGLE.

En esta pagina lo puedes encontrar

http://www.resoo.org/docs/dos/free_software/batch2.htm

Tengo otro que no utiliza ningun programa externo. Luego lo busco y te lo envio.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por amparitohijo (94 intervenciones) el 11/03/2009 10:26:46
Buenas.
No he probado nunca el listmod, pero lo haré en cuanto pueda descargar cosas (gracias por la aportación, Antoni)

A mi de pronto se me ocurre algo así:

for /f "tokens=1,2 delims=o" %%a in ('dir /b dibujo??.jpg') DO (ren %%ao%%b 00%%b)

Es una pequeña trampa, ya que si el nombre no es Dibujo??.jpg, no funcionaría. Además, sólo funciona con 2 dígitos... En fin, que estoy seguro de que con un for se puede hacer, pero ahora mismo no caigo....

Si encontrais la solución, postearla, por favor.

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por Armando Nava  (194 intervenciones) el 11/03/2009 16:54:26
Hola.

/*** Un saludo para Amparito y Antoni, que siempre nos sacan de dudas ***/

Dependemos de, que el archivo siempre inicie con Dibujo, dibujo, pero en escencia que tenga 6 caracteres al inicio del nombre, mismos que vamos a quitar.

Primero como dice Antoni direccionamos la salida a un archivo
dir *.jpg /B >mylis.txt

A continuación podemos extraer la última parte del nombre:
set dib=Dibujo01.jpg
echo %dib:~6,6%
set prefijo=%dib:~6,6%

Y completamos con "00"

En este ejemplo extraemos a partir de la posición 6, 8 caracteres, al parecer no impacta en el nombre final del archivo.

renom.bat
----------------------------
dir /B *.jpg > mylis.txt
echo set dib=%%1 >sub1.bat
echo set extract=%%dib:~6,8%% >>sub1.bat
echo ren %%1 00%%extract%% >>sub1.bat

for /F %%a IN (mylis.txt) do sub1.bat %%a

del sub1.bat
del mylis.txt
---------------------------------------------------------

Solo como observación: En este bat construimos otro bat, la clave es colocar a nuestras variables entre otro para de %%, ó como en el caso del parámetro que le pasamos %%1 , así las veremos reflejadas en el nuevo archivo tal y como las necesitamos y no con el valor que actualmente pudieran tener.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por Antoni Masana (295 intervenciones) el 11/03/2009 19:38:03
Lo prometido es deura y aqui esta el bat sin ningun comando externo

Lo realize para un cliente, los textos estan en catalan, si alguien tiene algun problema con el idioma lo traducire sin problemas.

No explico lo que hace por que no me acuerdo pero funcionar funciona y muy bien
Tiene una ayuda, el BAT se llama originalmente RENOMBRA.BAT pero se le peude cambiar el nombre siempre que sea .BAT

RENOMBRA /?
o
RENOMBRA /H

En el Caso de MRPROPER seria la sintaxis algo asi

RENOMBRA *.JPG "" 1 4

Busca todos los ficheros *.JPG del directorio actual y los renombra con 4 digitos empezando por 0001

@echo off

:: [/] -------------------------------------------------------------------- [/]
:: [/]------- Valida parametres ----------------------------------------- [/]
:: [/] -------------------------------------------------------------------- [/]

if (%1) == (/@) goto Rename % Funcion de renombrar %

if (%1) == (/?) goto Ayuda
if (%1) == (/h) goto Ayuda
if (%1) == (/H) goto Ayuda
if (%1) == (?) goto Ayuda
if (%1) == () goto Error
if (%2) == () goto Error

:: [/] -------------------------------------------------------------------- [/]
:: [/] ------ Configuraci¢ inicial -------------------------------------- [/]
:: [/] -------------------------------------------------------------------- [/]

set Orig=%1
set Dest=%2
set Digi=4
set Cont=10000

IF not (%3) == () SET /A Cont+=%3
IF (%4) == () goto Sigue
IF %4 == 4 set Digi=4
IF %4 == 3 set Digi=3
IF %4 == 2 set Digi=2
IF %4 == 1 set Digi=1

:: [/] -------------------------------------------------------------------- [/]
:: [/] ------ Proces principal ---- Netega avans de sortir ------------ [/]
:: [/] -------------------------------------------------------------------- [/]

:Sigue
if exist _Name_.bat del _Name_.bat

for %%f in (%Orig%) do call %0 /@ "%%f"

call _Name_.bat
del _Name_.bat

set Orig=
set Dest=
set Digi=
set Cont=
goto Fin

:: [/] -------------------------------------------------------------------- [/]
:: [/] ------ Proces de renombrar fitxers -------------------------------- [/]
:: [/] -------------------------------------------------------------------- [/]

:Rename
SET /A Cont+=1
IF %Digi% == 4 SET val=%Cont:~1%
IF %Digi% == 3 SET val=%Cont:~2%
IF %Digi% == 2 SET val=%Cont:~3%
IF %Digi% == 1 SET val=%Cont:~4%

echo REN %2 %Dest%%val%.* >>_Name_.bat % Lo guarda en BAT %
goto Fin

:: [/] -------------------------------------------------------------------- [/]
:: [/] ------ Error de parametres --------------------------------------- [/]
:: [/] -------------------------------------------------------------------- [/]

:Error
echo.
echo. *** Error de parametres

:: [/] -------------------------------------------------------------------- [/]
:: [/] ------ A j u d a ------------------------------------------------- [/]
:: [/] -------------------------------------------------------------------- [/]

:Ayuda
echo.
echo. Sintaxis: %0 Origen Capcelera [Inici] [Digits]
echo.
echo. Origen Fitxers a renombra
echo. Capcelera Part inicial del nom del fitxers desti.
echo. Inici Valor Inicial del contador. Per defecta 0
echo. Digits Numero de digits. Per defecta 4
echo.
echo.
echo. Ejemple: %0 prova.txt FIL- 20 3
echo.
echo Resultat: REN prova.txt FIL-021.txt
echo.

:Fin

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por mrproper (3 intervenciones) el 11/03/2009 21:49:12
Joder Antonio, con perdón, está fenomenal. Muchísimas gracias. Funciona a la perfección. Sólo hay una pega, pero de poca importancia: empieza a renombrar en 0002 en vez de en 0001, pero vaya que me da igual.

Gracias de nuevo. Un saludo a todos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por amparitohijo (94 intervenciones) el 12/03/2009 12:38:20
Viva, Bravo y Hurra! Muchas gracias a los dos.

Si es que lo que no saquemos uniendo cerebros... Deberíamos patentarnos, jejeje

Cuanto más lo uso, más me gusta más este "lenguaje de programación". Día tras día lo encuentro más sencillo, útil y potente. Y además, totalmente fiable e integrado en Windows.

Para usarlo yo, me quedo con el de Armando porque es más automatizable (pero hay que tener un mínimo de conocimientos para ello), pero para los usuarios, el de Antoni es ideal.

Por cierto, sabía que se podía hacer lo de las variables desde un echo, pero no se me ocurría cómo.

Gracias de nuevo a los dos.

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por mrproper (3 intervenciones) el 12/03/2009 13:49:48
Ya te digo. Yo he copiado y pegado el fichero ese que Antoni ha puesto y renombar todas las fotos que tenía ha sido cuestión de segundos y tenía cientos en varios directorios, así que fenomenal. Ya digo, lo único que empezaban en el 0002 en vez de en 0001, pero creo que podré soportarlo. Jajajajaja

De nuevo, muchas gracias a todos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Renombrar archivos

Publicado por j2 (1 intervención) el 20/12/2012 14:24:06
lo debes ejecutar con cero en el segundo parámetro para que renombre desde uno

saludos,

así:

renombra *.jpg "" 0 1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar