Existe algum utilitário zip baseado em linha de comando?

4

Eu preciso agendar uma linha de comando para compactar o conteúdo de algumas pastas. Existe algum utilitário gratuito baseado em linha de comando que possa lidar com vários volumes?

(7Zip é desqualificado, o parâmetro -v ainda não está implementado)

EDIT: 7Zip realmente funciona com o parâmetro -v se usado conforme descrito no arquivo de ajuda, e não de acordo com a saída de ajuda do .exe.

EDIT2: Em uma inspeção mais próxima, há algo estranho acontecendo e eis o motivo pelo qual recebi a mensagem de erro "Não implementada": (Em um Windows 2008 Server x64 com código de idioma dos EUA):

@ECHO OFF
SET MYFILENAME=Backup-IIs-%date:~-4,4%-%date:~-10,2%-%date:~-7,2%.7z
ECHO %MYFILENAME%
"c:\program files-zipz" a "c:\backup\%MYFILENAME%" c:\inetpub\*.* -r -v49m

Resultado: Erro do sistema: não implementado.

Alterando para (observe ponto em vez de traço no nome do arquivo):

@ECHO OFF
SET MYFILENAME=Backup.IIs-%date:~-4,4%-%date:~-10,2%-%date:~-7,2%.7z
ECHO %MYFILENAME%
"c:\program files-zipz" a "c:\backup\%MYFILENAME%" c:\inetpub\*.* -r -v49m

E o 7Zip está feliz .... Alguém pode explicar?

    
por Magnus 23.09.2009 / 07:18

6 respostas

4

Para o registro, a opção ' -v ' na linha de comando 7-zip é usada para criando volumes .
Aqui está uma pequena descrição em Criando arquivos multi-volume com 7-zip .

Por favor, explique o que você quer dizer com " 7Zip é desqualificado, o parâmetro -v ainda não está implementado "?

    
por 23.09.2009 / 07:35
5

A maioria dos utilitários de linha de comando do GNU são portados para o windows, incluindo o zip:

link

Para vários volumes, você deve pós-processar o arquivo com o zipsplit (incluído no mesmo pacote).

    
por 23.09.2009 / 08:15
2

Bem, para o Linux você pode tar e gz zipar pastas via linha de comando, mas eu vou assumir o seu no windows?

    
por 23.09.2009 / 07:25
1

Você pode canalizar a saída de qualquer compressor que suporte gravação para stdout , como tar com suas opções gzip ou bzip2 , através do comando split relativamente padrão. Isso comprimirá e dividirá o resultado sem ter um arquivo intermediário (não formatado)

Você pode descompactar o resultado usando cat os arquivos juntos e canalizando o resultado para o descompactador.

Isto produzirá todos os arquivos de uma só vez (ou usará todos os arquivos de uma só vez para a etapa de descompressão) - portanto, se você estiver procurando por algo que ofereça suporte para inserir o próximo disquete / cd / dvd /. .. disco em cada passo isso não é bom para você.

Existem muitas portas desses utilitários disponíveis para ambientes Windows.

    
por 23.09.2009 / 08:44
1

O Zipgenius permite opções de linha de comando. Então você pode extrair e compactar arquivos a partir da linha de comando.

    
por 23.09.2009 / 14:09
0

Depois de passar algum tempo com o problema, acontece que ter um .7z como parte do nome do arquivo será o problema.

Ao criar volumes, o 7Zip os nomeará com .001, .002, etc. e já nomeará seu arquivo como .7z parece causar dor de cabeça.

É uma mensagem de erro muito ruim, mas uma solução simples.

    
por 19.01.2010 / 22:18