compresores_desde_la_terminal

¡Esta es una revisión vieja del documento!


Comprimir y descomprimir desde la terminal

Cada fichero ocupa espacio en un medio de almacenamiento.

Existen programas compresores que - por medio de distintos algoritmos de compresión someten el contenido de un fichero a un de análisis computacional y eliminación de redundancias, con el fin de reducir el espacio que este ocupaba.

Esto es especialmente útil para achicar el fichero para su transmisión o conservación definitiva.

Los sistemas similares a Unix cuentan con varios de estos compresores, pues existen varios formatos comprimidos. Podrás manejarlos desde la consola, operando casi siempre con opciiones muy similar: conservan una copia del fichero original y una comprimida con -k y descomprir con -d.

Los formatos comprimidos más comunes son:

GNU Zip es un programa de compresión estándar de baja performance. Sólo es capaz de comprimir un solo fichero

Compresión de .gz

Usa el programa gzip para comprimir fichero.ext. Esto creará una copia comprimida con extensión .gz:

gzip -k fichero.ext
El sufijo -k indica conservar el fichero.ext original. Si lo omites, gzip comprime el fichero en fichero.ext.gz.
Descompresión de .gz

Usa gzip con el indicador -d para descomprimir un fichero .gz:

gzip -d fichero.gz

Si deseas leer el contenido de un fichero de texto comprimido en un .gz, usa zcat:

zcat fichero.gz | less

bzip2 requiere mayor potencia de cómputo que GNU Zip pero comprime más efectivamente. Sin embargo, está menos extendido en otras plataformas.

Compresión de .bz2

Usa bzip2 para comprimir solo un fichero y generar un archivador .bz2.

bzip2 -k fichero.ext
Descompresión de .bz2

Usa bzip2 con el sufijo -d para descomprime el fichero .bz2.

bzip2 -d fichero.bz2

Si sólo deseas leer el contenido de un fichero de texto comprimido con .bz2, usa bzcat:

bzcat fichero.bz2 | less

La compresión más extrema (y de menor velocidad) la logra el compresor xz.

Compresión de .xz

Usa el programa xz para comprimir ficheros. Generarán un fichero .xz.

xz -k fichero.ext
Descompresión de .xz

Decomprime el fichero con:

xz -d fichero.xz

El programa tar se usa para crear un fichero .tar, un archivador concebido para meter varios ficheros en uno solo (encadenándolos binariamente uno tras otro).

Originalmente estaba pensado para almacenar este empaquetado en un carrete de cinta magnética (en la era donde tales dispositivos secuenciales eran los principales medios de almacenamiento de masa).
Empaquetar en .tar

tar cvf archivoempaquetado.tar ~/directorio/*

Desempaquetar .tar

Desempaqueta un fichero .tar con:

tar xvf archivoempaquetado.tar

.tar.gz

Comprimir .tar.gz

Comprime varios ficheros o directorios creando un fichero tar.gz. Si no lo has hecho, coloca los ficheros que desees en un ~/directorio, y somételo a un empaquetado en .tar, y compresión con gzip.

tar czvf archivocomprimido.tar.gz ~/directorio/*
Un fichero tar.gz que contiene un árbol de directorios con código fuente de un programa - un uso común de tar.gz - recibe el el apodo de “tarball”.

Descomprime el .tar.gz (en ocasiones puede aparecer como .tgz en Windows) - usando tar, y desempaqueta el resultado:

tar xvzf fichero.tar.gz

.tar.bz2

Descomprime paquete .tar.bz

Usa tar junto a bzip2 para descomrpiir y desempaquetar el fichero tar.

tar xvjf fichero.tar.bz2

.tar.xz

Es similar al tar.gz, pero comprime mejor gracias al protocolo xz:

Comprime paquetes .tar.xz
tar -cJf programa.tar.xz fichero_binario
tar.xz se suele especificar para empaquetado de programas binarios.
Descomprime paquetes .tar.gz

Descomprime el .tar.xz con xz y desempaqueta los ficheros binarios con tar:

tar -xJf fichero.tar.xz

Los ficheros empaquetados .zip/.ZIP son multiplataforma y extremadamente populares. Úsalos para transferir ficheros comprimidos a otras plataformas como Windows.

Puedes comprimir varios ficheros o directorios y generar un ficherocomprimido.zip usando una implementación libre del protocolo.

zip fichero_comprimido.zip fichero1 fichero2 fichero3

…o también comprimir recursivamente (-r) un directorio, con los ficheros y subdirectorios que contenga:

zip -r fichero_comprimido.zip directorio

Descomprime un paquete comprimido .zip con gzip -d:

gzip -d fichero.zip
A pesar de que el protocolo PKware ZIP está muy extendido en todo tipo de plataformas, no contempla ciertos atributos especiales utilizados en los sistemas tipo UNIX (posesión de los archivos, ciertos permisos, etc). Por tal motivo el método recomendado en UNIX es usar |tar.gz. Ambos presentan una compresión reducida.

El .rar es un formato de empaquetado y compresión propietario de A. Roshal, muy extendido. Descomprímelo con:

rar -x fichero.rar
  • compresores_desde_la_terminal.1707151771.txt.gz
  • Última modificación: 2024/02/05 16:49
  • por peron