Como usar "bzip2" para comprimir ficheiros

O único que sabes sobre Linux é que hai moita variedade. Hai centos de distribucións de Linux, con ducias de contornas de escritorio, varias suites de oficina, paquetes de gráficos e paquetes de audio.

Outra área onde Linux ofrece variedade é cando se trata de comprimir arquivos.

Os usuarios de Windows xa saberán que é un ficheiro zip e, polo tanto, os comandos " zip " e " unzip " serán usados ​​para comprimir e descomprimir arquivos no formato "zip".

Outro método para comprimir arquivos é usar o comando "gzip" e descomprimir un ficheiro cunha extensión "gz" pode usar o comando "gunzip".

Nesta guía, mostrarémosche outro comando de compresión chamado "bzip2".

Por que usar & # 34; bzip2 & # 34; Over & # 34; gzip & # 34 ;?

O comando "gzip" usa o método de compresión LZ77. A ferramenta de compresión "bzip2" usa o algoritmo "Burrows-Wheeler".

Entón, cal método debería usar para comprimir un ficheiro?

Se visita esta páxina, verá que ambos os métodos de compresión coincidiron un ao outro lado.

A proba execútase cada comando usando os axustes de compresión predeterminados e verá que o comando "bzip2" sae na parte superior cando se trata de reducir o tamaño do ficheiro.

Non obstante, se mire o tempo que tarda en comprimir o ficheiro, leva moito máis tempo facelo.

Paga a pena destacar a 3ª columna do cadro que se chama "lzmash". Este é o equivalente a executar o comando "gzip" co nivel de compresión establecido en "-9" ou poñelo en inglés, "a maioría comprimido".

O comando "lzmash" leva máis tempo que o comando "gzip" por defecto, pero o arquivo redúcese considerablemente e é menor que o equivalente "bzip2". Tamén vale notar que leva menos tempo facelo.

A súa decisión, polo tanto, será o que desexa comprimir os ficheiros e durante canto tempo estea disposto a agardar a que isto ocorra.

De calquera xeito, o comando "gzip" é un pouco mellor en ambos os casos.

Comprimindo ficheiros usando & # 34; bzip2 & # 34 ;.

Para comprimir un ficheiro usando o formato "bzip2", execute o seguinte comando:

nome de ficheiro bzip2

O ficheiro será comprimido e agora terá a extensión ".bz2".

O "bzip2" sempre intentará comprimir o ficheiro aínda que o ficheiro sexa máis grande como resultado. Isto pode ocorrer cando compres un ficheiro que xa foi comprimido.

Se tentas comprimir un ficheiro que producirá o ficheiro co mesmo nome que un ficheiro comprimido existente, ocorrerá un erro.

Por exemplo, se ten un ficheiro chamado "file1" e o cartafol xa ten un ficheiro chamado "file1.bz2", entón ao executar o comando "bzip" verá a seguinte saída:

bzip2: o arquivo de saída file1.bz2 xa existe

Como descomprimir arquivos

Hai moitas formas diferentes de descomprimir arquivos que teñen a extensión "bz2".

Podes usar o comando "bzip2" do seguinte xeito:

bzip2 -d filename.bz2

Isto descomprimirá o ficheiro e eliminará a extensión "bz2".

Se ao descomprimir o ficheiro causaría que se sobrescribise un ficheiro co mesmo nome, verá o seguinte erro:

bzip2: o ficheiro de ficheiro de saída xa existe

Un xeito máis agradable de descomprimir arquivos coa extensión "bz2" é usar o comando "bunzip2". Con este comando non precisa especificar ningún interruptor como se mostra a continuación:

bunzip2 filename.bz2

O comando "bunzip2" execútase exactamente do mesmo xeito que o comando "bzip2" co conmutador minus d (-d).

O comando "bunzip2" pode extraer calquera ficheiro válido comprimido usando "bzip" ou "bzip2". Ademais de descomprimir arquivos normais tamén pode descomprimir arquivos tar que foron comprimidos usando o comando "bzip2".

Por defecto, os ficheiros tar comprimidos usando o comando "bzip2" terán a extensión ".tbz2". Cando descomprimes este ficheiro usando o comando "bunzip2" o nome do ficheiro converteuse en "filename.tar".

Se ten un ficheiro válido comprimido con "bzip2" pero ten unha extensión diferente do que "bzip2" descomprimirá o ficheiro pero engadirá a extensión ".out" ao final do ficheiro. Por exemplo "myfile.myf" converterase en "myfile.out".

Como forzar a comprimir os ficheiros

Se quere que o comando "bzip2" comprime un ficheiro independentemente de se xa existe un ficheiro coa extensión "bz2", pode usar o seguinte comando:

bzip2 -f myfile

Se tes un ficheiro chamado "myfile" e outro chamado "myfile.bz2" entón o ficheiro "myfile.bz2" sobrescribirase cando "myfile" estea comprimido.

Como manter os dous arquivos

Se desexa manter o ficheiro que está comprimindo e o ficheiro comprimido pode usar o seguinte comando:

bzip2 -k myfile

Isto manterá o ficheiro "myfile", pero tamén o comprimirá e creará un ficheiro "myfile.bz2".

Tamén pode usar o conmutador minus k (-k) co comando "bunzip2" para manter tanto o ficheiro comprimido como o arquivo descomprimido ao descomprimir o ficheiro.

Proba a validez de A & # 34; bz2 & # 34; Arquivo

Podes probar se un comprimido está comprimido co mecanismo de compresión "bzip2" usando o seguinte comando:

bzip2 -t ficheiro nome.bz2

Se o ficheiro é un ficheiro válido, non se devolverá ningunha saída, pero se o ficheiro non é válido, recibirá unha mensaxe dicindo.

Use menos memoria ao comprimir ficheiros

Se o comando "bzip2" usa demasiados recursos ao comprimir un ficheiro, pode reducir o impacto especificando o selector de menos s (-s) do seguinte xeito:

bzip2 -s nomefile.bz2

Ten en conta que tarda máis tempo en comprimir un ficheiro usando este interruptor.

Obteña máis información ao comprimir arquivos

De xeito predeterminado cando executas os comandos "bzip2" ou "bunzip2" non recibes ningunha saída e só aparece o novo ficheiro.

Se quere saber o que está a suceder cando comprime ou descomprime un ficheiro, pode obter máis resultados detallados especificando o modificador minus v (-v) do seguinte xeito:

nome de ficheiro bzip2 -v

A saída aparecerá do seguinte xeito:

nome de ficheiro: 1.172: 1 6.872 bits / byte 14.66% salvou 50341 en 42961 fóra

As partes importantes son a porcentaxe gardada, o tamaño de entrada eo tamaño de saída.

Recuperar ficheiros rotos

Se tes un ficheiro "bz2" roto, o programa a empregar para probar e recuperar os datos é o seguinte:

bzip2recover filename.bz2