Usando Data e Hora num ficheiro batch para criar um nome de ficheiro
Estou a correr um programa a partir de um ficheiro batch, que quando é feito faz uma cópia de segurança automática da minha base de dados MySQL.
Gostaria que o ficheiro batch criasse uma cópia de segurança diferente para cada execução, para poder fazer uma cópia de segurança.
O nome de ficheiro desejado seria gnucash_shockwave-20121128210344. sql (Formato de data AAAA-MM-DD-HH-MM-SS)
Eu pesquisei no Google algumas coisas que diziam %DATE:~4%
e %Date.Year%
mas recebo um erro que diz The system cannot find the specified path.
Se eu remover a tentativa de timestampá-lo, o script funciona bem, mas escreve por cima do backup anterior
Aqui está a secção de código de que estou a falar:
@REM ***EXECUTION***
echo. Starting backup...
SET timestamp %DATE:~-4%%DATE:~4,2%%DATE:~7,2%%TIME%
%mysqldir%\mysqldump -u %mysqluser% -p%mysqlpassword% -h %mysqlhost% -P %mysqlport% --databases --routines --verbose gnucash_shockwave > %BackupDir%\gnucash_shockwave-%timestamp%.sql
echo.------------------------------------------------------
echo. Backup complete!
Alguma sugestão?