Seu %date%
contém algum caractere reservado (s) , por exemplo /
(barra invertida). Como %date%
depende strongmente das configurações de localidade do usuário, eu usaria a próxima solução independente de localidade com data em yyyymmdd
format :
SETLOCAL EnableExtensions
for /F "delims=" %%G in ('wmic os get LocalDateTime /value^|find "="') do set %%G
copy c:\mydir\file.zip "c:\temp\file-%LocalDateTime:~0,8%.zip"
Recursos (leitura obrigatória, incompleta):
- (referência de comando) Um índice A-Z da linha de comando do Windows CMD
- (particularidades adicionais) Sintaxe da linha de comando do shell do Windows CMD
- (
%%~G
,%~1
etc. página especial) Argumentos da linha de comando (parâmetros) - (
%LocalDateTime:~0,8%"
) Extrair parte de uma variável (substring)