Automatizar a compactação de pastas com o nome contendo a data atual é uma tarefa essencial para organizar backups e entregas de arquivos. Este método garante que cada arquivo compactado seja único e facilmente identificável pelo dia em que foi criado, eliminando o risco de sobrescrever arquivos anteriores.
Antes de criar o script, é fundamental confirmar qual ferramenta de compactação está disponível no sistema. O comando where ajuda a localizar o executável do software.
where 7z
where winrar
O script a seguir usa o comando date /t para obter a data atual e formata-la no padrão AAAAMMDD. Em seguida, ele compacta a pasta especificada usando o 7-Zip. Ajuste o caminho da pasta e o nome do arquivo conforme necessário.
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YYYY=%dt:~0,4%"
set "MM=%dt:~4,2%"
set "DD=%dt:~6,2%"
set "date=%YYYY%%MM%%DD%"
set "folder_path=C:\Caminho\Para\Sua\Pasta"
set "output_file=C:\Destino\Backup_%date%.zip"
"C:\Program Files\7-Zip\7z.exe" a -tzip "!output_file!" "!folder_path!"
echo Backup concluído: !output_file!
pause
Salve o código acima em um arquivo com extensão .bat (ex: backup_data.bat). Clique com o botão direito e selecione "Executar como administrador" para garantir permissões de acesso às pastas. O script criará um arquivo .zip no local especificado com o nome contendo a data atual.
| Data de Execução | Nome do Arquivo Gerado | Pasta Compactada |
|---|---|---|
| 2024-07-15 | Backup_20240715.zip | C:\Documentos\Projeto |
| 2024-07-16 | Backup_20240716.zip | C:\Documentos\Projeto |
Com este script batch, você automatiza a compactação de pastas de forma rápida e confiável, garantindo que cada backup tenha um nome único baseado na data atual. Esta abordagem simplifica o gerenciamento de arquivos e evita conflitos, permitindo que você se concentre em tarefas mais estratégicas.