Leer archivo con nombre variable

Iniciado por Jonha000, 9 Agosto 2010, 14:14 PM

0 Miembros y 1 Visitante están viendo este tema.

Jonha000

Hola!

No encuentro la manera de realizar lo siguiente en un bat de windows:

Tengo un archivo que cambia de nombre según la versión: archivo2356, archivo2357 etc.
Quería leer el nombre de archivo, en concreto los 4 últimos caracteres para decidir si se copia o no. Pero no soy capaz, estoy desesperada!

Muchas gracias!

EddyW

Puedes listar todos los archivos que comienzan con "archivo" con For, luego haces comparaciones:
Puedes guiarte con:
Código (dos) [Seleccionar]
@Echo Off
SetLocal EnableDelayedExpansion
For /f "tokens=*" %%_ In ('Dir archivo*/B') Do (
Set Name=%%_
Echo.!Name! -^> !Name:~-4!
)
Pause


SaluDOS!!!

Jonha000

Gracias!
Basándome en tu código lo he dejado así, ya que se me olvidó especificar que el archivo es de la forma archivo6826.zip


For /f "tokens=1 delims=." %%_ In ('Dir archivo*/B') Do (
Set Name=%%_
)
set version=!Name:~-4!

EddyW

Simplemente así: ;)
Código (dos) [Seleccionar]
For /f "tokens=1 delims=." %%_ In ('Dir archivo*.zip/B') Do (

Luego dejas todo el código tal como está ;)

SaluDOS!!!