Android

Como compactar arquivos e diretórios no linux

Compactando e descompactando arquivos com zip no Linux

Compactando e descompactando arquivos com zip no Linux

Índice:

Anonim

Zip é o formato de arquivo mais amplamente usado que suporta compactação de dados sem perdas.

Um arquivo Zip é um contêiner de dados que contém um ou mais arquivos ou diretórios compactados. Os arquivos compactados (compactados) ocupam menos espaço em disco e podem ser transferidos de uma máquina para outra com mais rapidez do que os arquivos não compactados. Os arquivos zip podem ser facilmente extraídos no Windows, macOS e Linux usando os utilitários disponíveis para todos os sistemas operacionais.

Neste tutorial, mostraremos como compactar (compactar) arquivos e diretórios no Linux usando o comando zip .

Comando zip

zip é um utilitário de linha de comando que ajuda a criar arquivos Zip.

O comando zip assume o seguinte formato de sintaxe:

zip OPTIONS ARCHIVE_NAME FILES

Para criar um arquivo Zip em um diretório específico, o usuário precisa ter permissões de gravação nesse diretório.

Os arquivos zip não suportam informações de propriedade no estilo Linux. Os arquivos extraídos pertencem ao usuário que executa o comando.

Para preservar a propriedade e as permissões do arquivo, use o comando tar

O utilitário zip não é instalado por padrão na maioria das distribuições Linux, mas você pode instalá-lo facilmente usando o gerenciador de pacotes da sua distribuição.

Instale o Zip no Ubuntu e Debian

sudo apt install zip

Instale o Zip no CentOS e no Fedora

sudo yum install zip

Como ZIP Arquivos e Diretórios

Para compactar um ou mais arquivos, especifique os arquivos que você deseja adicionar ao arquivo separados por espaço, conforme mostrado abaixo:

zip archivename.zip filename1 filename2 filename3

adding: filename1 (deflated 63%) adding: filename2 (stored 0%) adding: filename3 (deflated 38%)

Por padrão, o comando zip imprime os nomes dos arquivos adicionados ao arquivo e o método de compactação. Explicaremos os métodos e o nível de compactação posteriormente neste guia.

Ao especificar o nome do arquivo Zip, se você omitir a extensão .zip ela será adicionada automaticamente, a menos que o nome do arquivo contenha um ponto. zip archivename.zip filename criará um arquivo com o mesmo nome que zip archivename filename .

Para suprimir a saída do comando zip , use a opção -q :

zip -q archivename.zip filename1 filename2 filename3

Geralmente, você cria um arquivo Zip de um diretório, incluindo o conteúdo dos subdiretórios. A opção -r permite percorrer toda a estrutura de diretórios recursivamente.

Para criar um arquivo Zip de um diretório, você usaria:

zip -r archivename.zip directory_name

Você também pode adicionar vários arquivos e diretórios no mesmo arquivo morto:

zip -r archivename.zip directory_name1 directory_name2 file1 file1

Métodos e níveis de compressão

O método de compactação padrão do Zip é esvaziar. Se o utilitário zip determinar que um arquivo não pode ser compactado, ele simplesmente armazena o arquivo no arquivo morto sem compactá-lo usando o método de armazenamento. Na maioria das distribuições Linux, o utilitário zip também suporta o método de compactação bzip2.

Para especificar um método de compactação, use a opção -Z .

zip -r -Z bzip2 archivename.zip directory_name

… adding: sub_dir/ (stored 0%) adding: sub_dir/file1 (bzipped 52%) adding: sub_dir/file2 (bzipped 79%)

O comando zip permite especificar um nível de compactação usando o número prefixado com um traço de 0 a 9. O nível de compactação padrão é -6 . Ao usar -0 , todos os arquivos serão armazenados sem compactação. -9 forçará o comando zip a usar uma compactação ideal para todos os arquivos.

Por exemplo, para usar o nível de compactação -9 , digite algo assim:

zip -9 -r archivename.zip directory_name

Quanto maior o nível de compactação, mais intensivo é o processo zip da CPU e levará mais tempo para concluir.

Criando um arquivo ZIP protegido por senha

zip -e archivename.zip directory_name

Você será solicitado a inserir e verificar a senha do arquivo morto:

Enter password: Verify password:

Criando arquivo zip dividido

Imagine que você deseja armazenar o arquivo Zip em um serviço de hospedagem de arquivos com um limite de upload de tamanho de arquivo de 1 GB e seu arquivo Zip é de 5 GB.

Você pode criar um novo arquivo Zip dividido usando a opção -s seguida pelo tamanho especificado. O multiplicador pode ser k (kilobytes), m (megabytes), g (gigabytes) ou t (terabytes).

zip -s 1g -r archivename.zip directory_name

O comando acima continuará criando novos arquivos em um conjunto após atingir o limite de tamanho especificado.

archivename.zip archivename.z01 archivename.z02 archivename.z03 archivename.z04

Exemplos ZIP

Crie um arquivo Zip denominado archivename.zip contendo todos os arquivos no diretório atual.

zip archivename *

O mesmo que acima, incluindo os arquivos ocultos (arquivos começando com um ponto):

zip archivename.* *

Crie um arquivo Zip denominado archivename.zip contendo todos os arquivos MP3 no diretório atual sem compactar os arquivos.

zip -0 archivename *.mp3

Conclusão

No Linux, você pode criar arquivos Zip com o comando zip .

Para extrair um arquivo ZIP em um sistema Linux, você pode usar o comando descompactar.

terminal zip