Compactar e dividir arquivos no gerenciador de arquivos

24

Se você clicar com o botão direito do mouse em um arquivo no Nautilus e selecionar Compress, você verá uma caixa de diálogo na qual poderá escolher um formato de compactação e um nome de arquivo. Se você clicar em Avançado, haverá configurações para dividir e compactar o arquivo, mas ele estará desativado / insensível. Como e como faço para ativar esses recursos?

Editar: Em uma resposta abaixo, foi sugerido que tem algo a ver com rar. Mas eu tenho isso instalado e não tenho as opções para dividir.

    
por Jo-Erlend Schinstad 27.07.2011 / 04:28

5 respostas

17

Apenas algumas ferramentas de arquivamento suportam a divisão. Um deles é RAR - pacote rar (mas é shareware e você precisa comprá-lo após 40 dias - Shareware nos repositórios do Ubuntu (RAR) e outro é, por exemplo, 7zip - package p7zip-full . Você precisa instalar um deles (eu sugiro 7zip porque é completamente grátis).

Você também pode criar um arquivo sigle e depois dividi-lo em partes usando o comando split (ou HJSplit para GUI).

    
por Vojtech Trefny 19.08.2011 / 08:51
7

Para ativar a opção de divisão, selecione .rar na caixa suspensa de extensão de arquivo.

    
por aneeshep 27.07.2011 / 04:48
1

Tente substituir o rar por unrar-free ou por outro lado.

Isso pode ser feito simplesmente

sudo apt-get install rar unrar-free
    
por PvdL 19.08.2011 / 08:30
1

Considerando o caso específico de arquivos ZIP de vários segmentos,

esta é uma resposta complementar ao principal .

Como já foi dito na resposta principal, apenas algumas ferramentas de arquivamento suportam a divisão, e a GUI principal não parece capaz de criar arquivos multi-segmento no formato zip . Formatos alternativos podem ser usados, como rar e 7z .

Além disso, apenas algumas ferramentas podem extrair arquivos zip de vários segmentos, como os discutidos aqui: veja a nota final desta resposta.

Como a questão aborda especificamente a questão de lidar com o arquivamento do menu de contexto do gerenciador de arquivos , examinei alguns comandos que poderiam atingir o propósito determinado mesmo para zip files: tais comandos, se for bem sucedido, pode ser facilmente adicionado ao gerenciador de arquivos como entradas do menu de contexto.

Considerando a ferramenta zip , os arquivamentos de vários segmentos podem ser criados diretamente com um comando como zip my_archive.zip -r <file> -s 20971519 (mais detalhes em essa questão ), mas elas não são úteis porque não estão prontas para serem extraídas (é necessário um comando zip -s 0 suplementar para criar um grande arquivo extraível com 1 arquivo - conforme descrito aqui ) e esta limitação não pode ser evitada. Enviar um arquivo de vários segmentos para alguém que não saiba disso é inútil.

Como já sugerido na resposta principal, outra maneira é compactar o arquivo e dividir o arquivo único com split (ou a hjsplit GUI). (Eu testei a GUI e achei extremamente lento, enquanto que para o propósito do menu de contexto a GUI não é necessária.)

A idéia é adicionar ao menu de contexto do gerenciador de arquivos uma entrada que, com apenas um clique,

  1. compactar arquivos selecionados como um único arquivo zip ,
  2. divida o arquivo zip em partes do tamanho máximo especificado e
  3. remova-o para manter apenas o arquivo de vários arquivos.

Então, eu testei com o Thunar e uma ação personalizada com esses três comandos conectados por && :

zip -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

(Isso deve ser aplicado a um ou mais arquivos selecionados, mas não a diretórios; para aplicar a diretórios, a opção zip -r é necessária:

 zip -r -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

  • -j representa uma opção de zip para "lixo o caminho": ao contrário de um comando de terminal que contém o caminho completo do (s) arquivo (s) a ser arquivado, um comando de menu de contexto que usa %F para arquivos selecionados adicionaria ao arquivo uma estrutura pasta-na-pasta, a menos que -j fosse usado; (fonte: criar estrutura de diretório zip - ignore );

  • my_archive.zip é o nome personalizado do arquivo ainda não dividido; o comando split será aplicado a ele e, em seguida, o primeiro será removido com rm

  • %F pode ser usado em uma ação personalizada do Thunar para compactar vários arquivos como zip ; Como alternativa, %f deve ser usado para a seleção de apenas um arquivo;

  • -b 20m representa o tamanho das partes de arquivo separadas criadas por split conforme indicado aqui ;

  • split.zip é uma especificação que não é necessária; é o nome personalizado do arquivo final de vários arquivos, daria algo como split.zipaa, split.zipab, split.zipac... , e sem ela a saída será nomeada x seguida por aa fragmento-sufixos: xaa, xab, xac... , etc; existe uma split opção -d para usar sufixos numéricos em vez de alfabéticos, mas isso dá um erro (porque aparentemente o extrator espera um arquivo ZIP multi-segmento padrão quando vê um sufixo numérico - como sugerido em um chat privado por Stephen Kitt ;

  • rm aplicado ao arquivo my_archive.zip só nos deixará com o arquivo desejado de vários segmentos.

Nota:

Para que o multi-zip-archive resultante seja extraído, é necessária uma ferramenta que suporte aa segmentetd archives , como file-roller no Linux e 7-Zip no Windows.

    
por cipricus 19.09.2017 / 15:15
-1

Usando o p7zip-full, como o Vojtech Trefny sugeriu, funciona, mas não me permitiu escolher rar como método de compressão. Nem o unrar. No entanto, a instalação do pacote "rar" apresenta essa opção e, se você abrir o Advanced, todas as opções serão confidenciais.

    
por Jo-Erlend Schinstad 19.08.2011 / 09:49