Foros del Web » Programación para mayores de 30 ;) » Programación General »

Renombrado de archivos con expresiones regulares BATCH

Estas en el tema de Renombrado de archivos con expresiones regulares BATCH en el foro de Programación General en Foros del Web. Que tal, mi pregunta va enfocada a lo siguiente: tengo un archivo llamado prueba.algo.html lo que quiero es renombrarlo mediante un batch pero la cuestion ...
  #1 (permalink)  
Antiguo 25/06/2010, 01:36
 
Fecha de Ingreso: enero-2010
Mensajes: 9
Antigüedad: 14 años, 10 meses
Puntos: 0
Renombrado de archivos con expresiones regulares BATCH

Que tal,

mi pregunta va enfocada a lo siguiente:

tengo un archivo llamado

prueba.algo.html

lo que quiero es renombrarlo mediante un batch pero la cuestion no es tan simple ya que "algo" es variable es decir puede tomar otros valores

prueba.123.html
prueba.abc.html
prueba.xzy.html

lo que requiero es eliminar el .html sin afectar lo demas

alguna idea?

PD estoy trabajando en BATCH, es un proyecto de escuela.
  #2 (permalink)  
Antiguo 25/06/2010, 09:06
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Renombrado de archivos con expresiones regulares BATCH

Puedes hacer esto:

Código:
echo off



for /f "tokens=* delims= " %%a in ('dir /B "prueba.*.html"') do (

echo %%a > log.txt

for /f "tokens=1,2,3 delims=." %%a in (log.txt) do (
rename %%a.%%b.%%c %%a.%%b.txt
)

)

del log.txt
Este codigo primero busca todos los archivos llamados prueba.algo.html, despues guarda ese nombre en un archivo de texto, a continuacion saca los valores de ese archivo para eliminar el .html y cambia el nombre por el mismo nombre pero con la extension .txt

Espero que sea lo que estas buscando, saludos!!!

Última edición por Libras; 25/06/2010 a las 13:23

Etiquetas: batch, msdos, windows
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:12.