COPY de archivos agregando fecha al nombre

Estoy creando un bat para respaldar unas bases de datos desde un directorio a otro. El destino debe quedar con el nombre original más la fecha del día en formato YYYMMDD.
En el bat tengo la siguiente sentencia :
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET DATE=%%B
set arch1=BaseDeDatos%DATE%.mdb
Aquí es donde me da error, pues la variable arch1 queda con un nombre de archivo no válido y además está en formato DD/MM/YYYY y lo necesito YYYYMMDD.

1 Respuesta

Respuesta
1
Creo que el error esta en la vatiable que estas usando para tomar la fecjha que coincide con la del sistema operativo
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET fechaDATE=%%B
set arch1=BaseDeDatos%fechaDATE%.mdb
Date es un comando interno del Sistema operativo y por ello palabra reservarda, es decir no se puede usar como nombre_de_varibale.
Una posible solución podría ser así
rem La solucion podria ser +o- asi...
rem -- formato comando copia_s_ nombrefichero.xls
for /f "tokens=1-4 delims=/.- " %%A in ('date /t') do ( copy %1.* nomfich_%%C%%B%%A.*)
Esto nos copiaría el fichero de hoja de calculo (extensión XLS) con nombre nombrefichero, metido por parámetro en nombrefichero_AAMMDD.xls

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas