Se bem entendi, você quer pegar uma pasta específica que é criada em um formato YYYYMMDD e zipar o conteúdo. O arquivo zip gerado precisa ser colocado nessa pasta também.
No nível mais básico, você pode realizar isso com um comando como o seguinte
"c:\Program Files-Zipz.exe" a x:\Logs\HS121010121010.zip X:\Logs\HS121010\*
NOTA: 7-zip deve ser instalado para usar o comando acima
Com o comando acima, você teria que preencher manualmente o AAAAMMDD toda vez que quiser fechar uma nova pasta de data.
Isso pode ser levado um passo adiante e você pode modificar o comando para usar o YYYYMMDD atual para a data de hoje. A chave para isso é usar a variável% date% no DOS. Você pode ler mais informações sobre essa variável digitando set /?
. Para formatar a data como YYYYMMDD, precisaremos de uma subcadeia da variável %date%
da seguinte forma:
echo %date:~10,4%%date:~4,2%%date:~7,2%
O comando acima deve mostrar a data em AAAAMMDD.
Por último, podemos colocar esses dois comandos juntos para gerar um comando de uma linha que irá zipar todos os arquivos no diretório com a data de hoje (no formato YYYMMDD).
"c:\Program Files-Zipz.exe" a x:\Logs\HS\%date:~10,4%%date:~4,2%%date:~7,2%\%date:~10,4%%date:~4,2%%date:~7,2%.zip X:\Logs\HS\%date:~10,4%%date:~4,2%%date:~7,2%\*
Uma etapa adicional pode ser executada para automatizar isso, adicionando o comando acima como uma tarefa agendada no Windows.