19Aug

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 de energia e tipos de administração de sistema preferem usar o formato 7z porque oferecem taxas de compressão significativamente melhores. O formato zip tem algumas coisas para ele, como velocidade( em relação a outros formatos de compressão) e suporte a aplicativos.

Então, para obter o melhor dos dois mundos, criamos um script que converterá seus arquivos zip em arquivos 7z com um único comando, um processo que chamamos de "arquivamento profundo".

Usos Práticos

Então, por que você precisaria desse script quando pudesse criar arquivos 7z para começar? Aqui estão alguns motivos:

  1. Certos aplicativos só podem produzir arquivos em formato zip.
  2. Uma vez que a compressão zip é mais rápida que a compressão 7z, você pode querer produzir rapidamente um arquivo zip e depois "comprimir profundamente" mais tarde.

Considere esse cenário:

Você executa um site FTP onde os clientes enviam 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, apenas no caso de seus usuários precisarem deles novamente( nesse caso você é um herói para tê-los prontamente disponíveis).Para economizar espaço, você pode converter os arquivos zip para o formato 7z e esconder os mesmos.

Alternativamente, substitua os dados carregados pelo cliente do cenário acima com os dados de usuário de backup( ou qualquer outra coisa que você possa pensar) e você pode ver que existem muitas aplicações práticas para isso.

O Script

@ECHO OFF ECHO Deep Archive ECHO Escrito por: Jason Faulkner ECHO SysadminGeek.com ECHO.ECO.REM Toma um arquivo Zip e recompressa-o como arquivo 7z. Processo de script REM: REM 1. Descompacte o arquivo existente. REM 2. Comprime 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 a partir da linha de comando: REM FORFILES / P "pathtozipfiles" / M *. zip / C "cmd / c DeepArchive @path" REM REM Para executar a compressão / descompressão do arquivocomo processos de fundo de baixa prioridade REM adiciona isso na frente dos comandos 7ZA( NÃO adicione isso na frente do comando 7ZA de validação): REM START / BelowNormal / Wait REM Adicionando o comando acima usará uma nova janela para executar essas operações. SETLOCAL EnableExtensions EnableDelayedExpansion REM O arquivo de arquivo profundo deve ser validado?(1 = sim, 0 = não) SET Validar = 0 REM Compressão nível: 1,3,5,7,9( maior = mais lento, mas mais compressão) SET CompressLevel = 5 REM Eliminar o arquivo zip fonte em caso de sucesso?(1 = sim, 0 = não) SET DeleteSourceOnSuccess = 1 REM ---- Não modifique nada abaixo desta linha ---- SET ArchiveFile =% 1 SET DeepFile =% ArchiveFile:. zip =. 7z% SET tmpPath =%TEMP %% ~ nx1 SET tmpPathZip = "% tmpPath% *" SET tmpPath = "% tmpPath%" SET tmpFile = "% TEMP% tmpDeepArchive.txt" SE NÃO EXIST% tmpPath%( MKDIR% tmpPath%) ELSE( RMDIR / S/ Q% tmpPath%) ECHO Extraindo o arquivo:% ArchiveFile% 7ZA x% ArchiveFile% -o% tmpPath% ECHO.ECHO Compressing archive:% DeepFile% 7ZA a -t7z -mx% CompressLevel%% DeepFile%% tmpPathZip% ECHO.IF{ % Validate%} =={ 1}( ECHO Validando o arquivo:% DeepFile% 7ZA t% DeepFile% | FIND / C "Tudo está Ok" & gt;% tmpFile% SET / P IsValid = & lt;% tmpFile% IF!IsValid! == 0( ECHO Validation failed! DEL / F / Q% DeepFile% ECHO. GOTO Fail) ELSE( ECHO Validation passed.) ECHO.) GOTO Sucesso: Success IF{ % DeleteSourceOnSuccess%} =={ 1} DEL /F / Q% ArchiveFile% ECHO Sucesso GOTO End: Fail ECHO Failed GOTO End: End IF EXIST% tmpFile% DEL / F / Q% tmpFile% IF EXIST% tmpPath% RMDIR / S / Q% tmpPath% ENDLOCAL

Links

Download DeepArchiveScript de SysadminGeek.com

Baixar 7-Zip Command Line Tool