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!
Puedes listar todos los archivos que comienzan con "archivo" con For, luego haces comparaciones:
Puedes guiarte con:
@Echo Off
SetLocal EnableDelayedExpansion
For /f "tokens=*" %%_ In ('Dir archivo*/B') Do (
Set Name=%%_
Echo.!Name! -^> !Name:~-4!
)
Pause
SaluDOS!!!
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!
Simplemente así: ;)
For /f "tokens=1 delims=." %%_ In ('Dir archivo*.zip/B') Do (
Luego dejas todo el código tal como está ;)
SaluDOS!!!