Converta facilmente todos os seus arquivos Zip para arquivos 7z
O formato zip é o padrão para a compactação de arquivos, no entanto, muitos usuários avançados e administradores do sistema preferem usar o formato 7z, pois oferecem taxas de compactação significativamente melhores. O formato zip tem algumas coisas, como velocidade (em relação a outros formatos de compactação) e suporte a aplicativos.
Então, para obter o melhor dos dois mundos, criamos um script que irá converter seus arquivos zip em arquivos 7z com um único comando, um processo que estamos chamando de “deep archiving”..
Usos Práticos
Então, por que você precisaria deste script quando você poderia simplesmente criar arquivos 7z para começar? Aqui estão algumas razões:
- Certos aplicativos podem produzir apenas arquivos no formato zip.
- Como a compactação zip é mais rápida que a compactação 7z, talvez seja necessário produzir rapidamente um arquivo zip e, em seguida, "comprimir profundamente" mais tarde.
Considere este cenário:
Você executa um site FTP no qual os clientes fazem upload de dados para você no formato zip. Seus usuários então baixam e usam os dados conforme necessário, mas você deseja manter esses arquivos por um tempo, caso seus usuários precisem deles novamente (nesse caso, você é um herói por tê-los prontamente disponíveis). Para economizar espaço, você pode converter os arquivos zip no formato 7z e guardá-los.
Como alternativa, substitua os dados enviados pelo cliente do cenário acima pelos dados de backup dos usuários (ou qualquer outra coisa em que você possa pensar) e você pode ver que há muitas aplicações práticas para isso..
O script
@ ECHO OFF ECHO Arquivo Deep ECHO Escrito por: Jason Faulkner ECHO SysadminGeek.com ECHO. ECO. REM Retira um arquivo Zip e o recompõe como arquivo 7z. Processo REM Script: REM 1. Descompacte o arquivo existente. REM 2. Comprimir os arquivos extraídos no formato 7z. REM 3. (opcional) Valide o novo arquivo 7z. REM 4. (opcional) Exclua o arquivo de origem. REM REM Uso: REM DeepArchive ZipFile REM REM Requisitos: REM A ferramenta de linha de comando 7-Zip (7za.exe) está em um local definido na variável PATH. REM REM Notas Adicionais: REM Este script processa um único arquivo zip. REM Para processar todos os arquivos zip em uma pasta, use o comando ForFiles na linha de comando: REM FORFILES / P "pathtozipfiles" / M * .zip / C "cmd / c DeepArchive @path" REM REM Para executar a compactação / descompactação de arquivo como processos de baixa prioridade em segundo plano REM adicione isto na frente dos comandos 7ZA (NÃO adicione isto na frente do comando de validação 7ZA): REM START / BelowNormal / Wait REM Adicionar o comando acima usará uma nova janela para realizar estas operações. SETLOCAL EnableExtensions EnableDelayedExpansion REM O arquivo morto profundo deve ser validado? (1 = sim, 0 = não) SET Validate = 0 REM Nível de compressão: 1,3,5,7,9 (maior = mais lento mas mais compressão) SET CompressLevel = 5 REM Apagar ficheiro zip de origem com sucesso? (1 = sim, 0 = não) SET DeleteSourceOnSuccess = 1 REM ---- Não modifique nada abaixo desta linha ---- SET ArchiveFile =% 1 SET DeepFile =% ArquivoArquivo: .zip = .7z% SET tmpPath =% TEMP %% ~ nx1 SET tmpPathZip = "% tmpPath% *" SET tmpPath = "% tmpPath%" SET tmpFile = "% TEMP% tmpDeepArchive.txt" SE NÃO EXISTE% tmpPath% (MKDIR% tmpPath%) ELSE (RMDIR / S / Q% tmpPath%) ECHO Arquivo de extração:% ArchiveFile% 7ZA x% ArchiveFile% -o% tmpPath% ECHO. ECHO Arquivo de compactação:% DeepFile% 7ZA a -t7z -mx% CompressLevel%% DeepFile%% tmpPathZip% ECHO. SE % Validar% == 1 (ECHO Validando o arquivo:% DeepFile% 7ZA t% DeepFile% | FIND / C "Está tudo certo">% tmpFile% SET / P IsValid =< %tmpFile% IF !IsValid!==0 ( ECHO Validation failed! DEL /F /Q %DeepFile% ECHO. GOTO Fail ) ELSE ( ECHO Validation passed. ) ECHO. ) GOTO Success :Success IF %DeleteSourceOnSuccess%==1 DEL /F /Q %ArchiveFile% ECHO Success GOTO End :Fail ECHO Failed GOTO End :End IF EXIST %tmpFile% DEL /F /Q %tmpFile% IF EXIST %tmpPath% RMDIR /S /Q %tmpPath% ENDLOCAL
Links
Faça o download do script do DeepArchive em SysadminGeek.com
Download da ferramenta de linha de comando 7-Zip