Compactando e Restaurando Arquivos - Linux

Uma parte essencial do Linux são os comandos para compactar e arquivar arquivos. Vamos examinar algumas dessas ferramentas.

gunzip e gzip

Os comandos gunzip (GNU Unzip) e gzip (GNU Zip) são usados para compactar e restaurar arquivos. O comando gzip compacta arquivos, criando um arquivo com extensão .gz, além de poder restaurar o arquivo original. Já o comando gunzip é utilizado apenas para restaurar arquivos .gz.

A sintaxe básica do comando gzip é:

gzip [OPÇÃO]... [ARQUIVO]...

O comando aceita um conjunto de opções e uma lista de arquivos ou diretórios para compactação ou restauração. Por exemplo:

gzip book.pdf

Nesse caso, o arquivo "book.pdf" será compactado. Por padrão, o arquivo original é removido e substituído pelo arquivo compactado com extensão .gz, resultando em "book.pdf.gz".

Também é possível compactar vários arquivos de uma vez:

gzip book.pdf image.png

Cada arquivo será compactado individualmente.

Para manter o arquivo original, use a opção -k:

gzip -k book.pdf

O gzip também oferece várias outras opções úteis, incluindo:

  • -d, --decompress: descompactar o arquivo

  • -l, --list: listar os arquivos e diretórios compactados

  • -r, --recursive: compactar o conteúdo dos diretórios recursivamente

  • -1, --fast: compactação rápida (menos eficiente em termos de tamanho)

  • -9, --best: compactação máxima (mais eficiente em termos de tamanho, mas mais lenta)

Por exemplo, para visualizar informações sobre o arquivo compactado usando a opção -l:

gzip -l book.pdf.gz

A saída será algo como:

compressed        uncompressed  ratio uncompressed_name
10642132              11773659   9.6% /home/programicio/book.pdf

Para restaurar o arquivo compactado "book.pdf.gz":

gzip -d book.pdf.gz

O arquivo original será removido após a descompactação. Para manter o arquivo original, use a opção -k:

Também é possível descompactar usando o comando gunzip, apenas especificando o nome do arquivo. Se o arquivo já existir, o comando perguntará se deve sobrescrever:

gunzip -k book.pdf.gz
gzip: /home/programicio/book.pdf already exists; do you wish to overwrite (y or n)? y

Por padrão, gunzip também remove o arquivo compactado após a descompactação. Para evitar isso, use a opção -k.

bzip2 e bunzip2

O comando bzip2 é utilizado para compactar arquivos usando o algoritmo de compressão Burrows-Wheeler com codificação Huffman. O comando bunzip2 é usado para restaurar arquivos compactados pelo bzip2. Os arquivos gerados possuem a extensão .bz2. O bzip2 costuma ser mais eficiente que o gzip, criando arquivos cerca de 10% menores.

O comando bzip2 aceita um conjunto de opções e arquivos para compactação. As principais opções são:

  • -d, --decompress: realiza a descompactação

  • -z, --compress: realiza a compactação

  • -v, --verbose: exibe um resumo da operação

  • -k, --keep: mantém os arquivos originais

  • -f, --force: sobrescreve arquivos existentes

  • -t, --test: verifica a integridade do arquivo compactado

  • -1 .. -9: define o nível de compactação, onde 1 é mais rápido com maior tamanho, e 9 é mais lento com menor tamanho

  • --fast: equivalente a -1

  • --best: equivalente a -9

Por exemplo, para compactar dois arquivos:

bzip2 -k book.pdf image.png

Aqui, os arquivos "book.pdf" e "image.png" serão compactados individualmente, resultando em "book.pdf.bz2" e "image.png.bz2". Por padrão, os arquivos originais são removidos. Para mantê-los, use a opção -k.

Para obter um resumo detalhado da compactação, use a opção -v:

bzip2 -v book.pdf image.png

Saída esperada:

book.pdf:   1.098:1,  7.287 bits/byte,  8.91% saved, 11773659 in, 10724549 out.
image.png:  1.079:1,  7.413 bits/byte,  7.33% saved, 177489 in, 164473 out.

Para restaurar arquivos compactados:

bzip2 -d -v book.pdf.bz2 image.png.bz2

O comando bunzip2 também é usado para restaurar arquivos compactados com bzip2. Ao descompactar, o arquivo original é restaurado com o mesmo nome, sem a extensão .bz2. O bunzip2 pode também descompactar arquivos criados pelo gzip.

Por exemplo:

bunzip2 book.pdf.bz2 image.png.bz2

xz

O xz é uma ferramenta de linha de comando usada para compactar e descompactar dados. Baseia-se no algoritmo Lempel-Ziv-Markov (LZMA), conhecido por sua alta taxa de compressão e baixo uso de memória. O xz é utilizado para criar arquivos compactados de grandes arquivos e diretórios, especialmente em sistemas Linux. Ele também é usado para compactar o kernel Linux durante a instalação, proporcionando uma redução significativa do tamanho do arquivo, mantendo a integridade dos dados originais.

A sintaxe básica do comando é:

xz [OPÇÃO]... [ARQUIVO]...

O comando aceita as seguintes opções:

  • -z, --compress: compacta arquivos

  • -d, --decompress: descompacta arquivos

  • -t, --test: verifica a integridade do arquivo compactado

  • -l, --list: exibe informações sobre os arquivos no arquivo compactado

  • -k, --keep: mantém os arquivos originais

  • -f, --force: força a sobrescrita do arquivo de saída

  • -0...-9: define o nível de compressão; o padrão é 6

  • -e, --extreme: tenta melhorar a compressão usando mais tempo de CPU

  • -T, --threads=NUM: define o número máximo de threads; o padrão é 1

  • -v, --verbose: exibe um resumo detalhado da operação

Por exemplo, para compactar arquivos:

xz -v book.pdf image.png

Saída esperada:

book.pdf (1/2)
  100 %          9.9 MiB / 11.2 MiB = 0.885                   0:02             

image.png (2/2)
  100 %       157.6 KiB / 173.3 KiB = 0.909 

Isso resulta em arquivos "book.pdf.xz" e "image.png.xz".

Para descompactar arquivos, use a opção -d:

xz -d -v book.pdf.xz image.png.xz
Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com