Comandos para compactar e descompactar arquivos ZIP no Linux

Índice

Muitas vezes você terá notado que precisa enviar arquivos diferentes ao mesmo tempo ou utilizá-los em outros computadores, mas não deseja copiar todos os elementos, pois isso poderia supor uma desordem visual ou o tamanho destes não está dentro dos intervalos estabelecido pelo programa.

Para fazer isso, você não deve se preocupar, pois existe uma solução há várias décadas e nada mais nada menos do que usar compactação ZIP para isso. É verdade que a compressão ajuda a reduzir o tamanho original dos arquivos, mas podemos ir muito além e estabelecer medidas de segurança como senhas, exclusão de arquivos e mais tarefas que podem ser muito úteis no seu trabalho diário.

Os arquivos com a extensão .zip referem-se a arquivos que contêm vários objetos dentro deles para otimizar seu tamanho e mobilidade o máximo possível. Seu funcionamento consiste basicamente em reduzir o número total de bits e bytes de um arquivo e assim facilitar o seu envio através de conexões lentas à Internet ou ocupando menos espaço no disco rígido.

Agora, em ambientes Linux é natural usar arquivos compactados com as extensões .tar.gz e tar.bz2, mas como trabalhamos com mais pessoas, eles podem nos enviar um arquivo .zip para trabalharmos juntos e, portanto, é mais do que o necessário aprenda a gerenciar e usar esses tipos de arquivos no Linux. Assim estaremos sempre um passo à frente dos problemas que possam ser gerados.

Por padrão, em sistemas operacionais baseados em UNIX, como Linux, encontramos as funções zip (compactação) e unzip (descompactação) integradas para essas tarefas. Mas para adicionar mais possibilidades, temos outras funções, como zipcloak, zipdetails, zipsplit e zipinfo, que veremos mais tarde e entenderemos qual papel eles desempenham no Linux.

Instalações de distribuiçãoAs funções zip são por padrão em distribuições como Ubuntu 19.04, 18.10 e 18.04, mas se você usar o Fedora 29, deverá instalá-las com o seguinte comando:

 sudo dnf install perl-IO-Compress 
Se você usar o CentOS 7, você deve executar:
 sudo yum install perl-IO-Compress 

Pronto, já falamos bastante sobre compressão e agora é hora de ver em ação como usar essas ferramentas no Linux, para este caso usaremos o Ubuntu 19.04.

1. Como criar um arquivo zip no Linux


Essa é a principal tarefa a ser realizada.

Passo 1
Neste caso devemos atribuir o nome do arquivo a compactar (não é necessário adicionar a extensão .zip) e os arquivos que serão compactados, para isso iremos para o diretório desejado, neste exemplo Desktop, e nós irá executar o seguinte:

 zip Solvetic * .txt
Passo 2
Neste exemplo, o arquivo compactado do Solvetic será criado com todos os arquivos texto no desktop, podemos adicionar as demais extensões dos elementos disponíveis, por exemplo:
 zip Solvetic * .txt * .docx

etapa 3
Lá veremos os arquivos que foram adicionados ao arquivo compactado e ele será criado no mesmo diretório:

Passo 4
Um ponto a ter em mente é que, se trabalharmos com vários arquivos de vários tamanhos, este comando exibirá o nome do arquivo, bem como a quantidade de compactação associada a cada arquivo:

Etapa 5
Para visualizar os detalhes do arquivo compactado criado, executamos:

 ls -l Solvetic.zip

Etapa 6
Lá encontramos detalhes como:

  • Permissões atribuídas
  • Usuário que criou o arquivo
  • Data e hora da tarefa e mais

Etapa 7
Alguns usuários não desejarão ver a saída com os arquivos que foram adicionados ao compactado, isso porque pode haver muitos, para pular a saída com os resultados, adicionaremos o parâmetro -q (silencioso) como este:

 zip -q Solvetic * .txt

2. Como adicionar diretórios ou subdiretórios a um arquivo compactado no Linux

É normal que quando trabalhamos em um diretório ele contenha muitos mais subdiretórios que queremos adicionar, mas o objetivo nem sempre é adicionar todos eles.

Passo 1
O comando zip permite incluir subdiretórios no arquivo criado utilizando a opção -r (recursiva) e indicar o nome do subdiretório, neste caso iremos ao diretório / etc e adicionaremos ao compactar todos os arquivos cuja extensão é .conf mas além disso Vamos adicionar o subdiretório pm, para isso executamos o seguinte no terminal.

 zip -r -q Solvetic pm / * .conf
Passo 2
Vemos que os arquivos .conf e o subdiretório indicado foram adicionados.

3. Como definir o nível de compactação de um arquivo no Linux


Na hora de criar um arquivo compactado sua base é exatamente isso, compactação, no Linux podemos usar uma faixa de 0 a 9, onde o valor 0 se refere ao fato de que nenhum tipo de compactação será usado e 9 obviamente a compactação mais alta, você deve entenda que quanto maior a compressão o processo de criação do arquivo zip será mais demorado, então se sua virtude não é a paciência, use um valor baixo.
Por padrão, no Linux, o valor de conjunto de compactação é 6.

Passo 1
Por exemplo, se quisermos criar um arquivo sem compactação, executaremos:

 zip -0 -r -q Solvetic * .txt

Passo 2
Caso desejemos implementar a compressão máxima, usaremos o seguinte.
É importante especificar a faixa de compressão a ser usada no comando acima.
A diferença entre nenhuma compactação (nível 0) e a compactação padrão (nível 6) é 400K, enquanto a diferença entre a compactação padrão e o nível de compactação mais alto é 4K.

 zip -9 -r -q Solvetic * .txt

4. Como adicionar uma senha a um arquivo compactado no Linux


Chegamos a um dos pontos mais sensíveis já que entra em jogo a segurança dos arquivos que serão compactados, falamos sobre a possibilidade de adicionar uma senha aos arquivos zip no Linux.

Passo 1
Para isso, basta adicionar o parâmetro -e (criptografar) à linha no terminal da seguinte maneira:

 zip -e -r -q Solvetic * .txt
Passo 2
Ao pressionar Enter devemos inserir e confirmar a senha:

etapa 3
Uma vez atribuído, no momento em que queremos extrair o conteúdo do arquivo zip veremos o seguinte. Se não tivermos a senha correta, será difícil acessar as informações do arquivo compactado.

5. Como extrair um arquivo compactado no Linux

Passo 1
Outra tarefa natural neste tipo de tarefa é extrair os arquivos que foram compactados, para isso devemos utilizar o comando unzip com o nome do arquivo compactado desta forma. Lá podemos ver quais arquivos foram extraídos e é importante esclarecer que os arquivos ZIP não mostram detalhes sobre a propriedade do arquivo, por padrão todos os arquivos que extraímos são atribuídos ao proprietário configurado que está executando a tarefa de extração.

 descompacte Solvetic.zip

Passo 2
Se não quisermos ver os arquivos descompactados, podemos usar a opção -q (silencioso):

 descompacte -q Solvetic.zip 

6. Como extrair os arquivos para um diretório no Linux


Passo 1
Uma das opções úteis de compressão e descompressão no Linux é que podemos redirecionar os arquivos compactados para um novo diretório, isso vai ajudar a ter uma ordem e uma melhor apresentação visual destes, para isso usaremos o parâmetro -d (diretório ), neste caso vamos criar uma nova pasta chamada Documentos onde os arquivos serão extraídos:
 descompacte -q Solvetic.zip -d ./Documents 

Passo 2
Como resultado desta ação, veremos os arquivos que foram descompactados nesta nova pasta criada automaticamente:

PROLONGAR

7. Como extrair a senha de um arquivo compactado no Linux

Passo 1
Quando um arquivo protegido por senha é criado, ao usar o comando unzip junto com o parâmetro -q, devemos inserir a senha atribuída, se estiver incorreta veremos o seguinte:

Passo 2
Mas se inserirmos a senha correta, o resultado será o seguinte:

ObservaçãoSe estivermos em um ambiente seguro onde outras pessoas possam ver a senha ou nós mesmos, caso a esqueçamos, podemos armazená-la no sistema usando o parâmetro -P da seguinte maneira:

 descompacte -P "senha" -q Solvetic.zip 

8. Como excluir arquivos da descompactação no Linux


Muitas vezes, quando compactamos um arquivo usando zip no Linux, podemos hospedar arquivos multimídia como imagens, música, etc, arquivos de sistema ou arquivos de escritório como docx, odt, etc., mas no processo de descompactação temos a possibilidade de excluir certos extensões e libere apenas as desejadas

Passo 1
Por exemplo, neste caso, temos arquivos .txt e .docx:

Passo 2
Em primeiro lugar, adicionaremos todos esses arquivos em uma compactação:

 zip Solvetic * .txt * .docx

etapa 3
Agora vamos extrair os arquivos de texto (.txt) apenas, para isso executamos:

 descompacte -q Solvetic.zip -x * .docx

Passo 4
Como resultado, veremos que apenas os arquivos de texto foram extraídos:

9. Como sobrescrever arquivos no Linux

Passo 1
Quando extraímos um arquivo compactado no Linux, se algum dos arquivos existir, veremos a seguinte mensagem:

Passo 2
As opções são:

E isso éPermite que você substitua o arquivo

 y: sim

NãoSobrescrever o arquivo deixando o original

 nerd

PARASobrescrever todos os arquivos

 R: Tudo

NenhumNão sobrescreve nenhum dos arquivos disponíveis

 N: nenhum

RenomearEsta opção extrai o arquivo mas será necessário atribuir um novo nome

 r: Renomear 

Passo 2
Se quisermos forçar a substituição de todos os arquivos, usaremos o parâmetro -o como este:

 descompacte -o -q Solvetic.zip 

10. Como pesquisar um texto em um arquivo compactado no Linux

Passo 1
Esta opção nos dará a oportunidade de pesquisar um determinado arquivo ou texto dentro do arquivo compactado, para isso usaremos a linha -l (arquivo de lista) da seguinte forma:

 unzip -l Solvetic.zip | eles
Passo 2
Veremos o seguinte:

etapa 3
Lá encontramos detalhes como:

  • comprimento de cada arquivo
  • Data e hora da edição
  • nome do arquivo

11. Como adicionar uma senha a um arquivo compactado no Linux

Passo 1
É muito útil, acredite, pois aplica-se quando por algum motivo esquecemos a senha do arquivo zip no Linux, neste tipo de situação entra em cena o comando zipcloak, para isso vamos executar o seguinte:

 Zipcloak Solvetic1.zip
Passo 2
Este comando irá solicitar que digitemos e confirmemos uma nova senha para o arquivo selecionado:

12. Como visualizar os detalhes de um arquivo compactado no Linux

Passo 1
Outra das funções integradas no Linux para a utilização de arquivos compactados é zipdetails que, como o próprio nome indica, nos dará detalhes específicos do conteúdo, usaremos a seguinte linha:

 zipdetails Solvetic.zip | eles 

Passo 2
As informações exibidas implicam:

  • Cabeçalho do arquivo
  • Método de compressão usado
  • Comprimento do arquivo
  • Último acesso
  • Tamanho UID
  • Comprimento de compressão e muito mais informações

13. Como pesquisar conteúdo em um arquivo zip no Linux

Outra função útil é a busca por um termo dentro de um arquivo compactado, para isso usaremos a função zipgrep. Lá encontramos os arquivos e o texto associado à pesquisa.

 zipgrep Solvetic Solvetic.zip

14. Como acessar informações do arquivo zip no Linux

Passo 1
É prático quando queremos ver informações detalhadas do arquivo compactado, neste caso devemos usar o comando zipinfo:

 zipinfo Solvetic.zip | eles 

Passo 2
Encontramos detalhes como:

  • Permissões de arquivo
  • A versão da ferramenta usada para criar o arquivo ZIP.
  • Método de compressão
  • Tamanho do arquivo original
  • Descritor de arquivo
  • Nome dos objetos dentro do tablet e mais

etapa 3
O descritor de arquivo é composto por dois caracteres, que são:

  • O primeiro caractere pode ser um "t" ou um "b" que indica se é um arquivo de texto ou binário, se é uma letra maiúscula, significa que o arquivo está criptografado.
  • O segundo caractere representa o tipo de metadados incluídos para o arquivo, as opções são nenhum, um cabeçalho local estendido, um "campo extra" ou ambos.

15. Como dividir um arquivo compactado em Linux no Linux


É ideal quando precisamos modificar o tamanho do arquivo criado, lembre-se que existem certas limitações de tamanho ao enviar um arquivo, para reduzir ou estabelecer um novo tamanho usaremos a opção -n (tamanho) graças ao qual será possível definir um tamanho máximo para os arquivos .zip sejam novos ou existentes.

Podemos executar o seguinte. Com este comando, definimos o tamanho em no máximo 100 KB.

 zipsplit -n 102400 Solvetic1.zip 

Graças aos comandos zip e unzip (agregando suas diversas funcionalidades), o trabalho de compactar e descompactar os arquivos no Linux será uma tarefa realmente simples, funciona, seguro e o melhor de tudo eficaz.

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave