Cualquier distribución de Linux incluirá tanto tar como los paquetes con las librerías y utilidades para comprimir y descomprimir ficheros tanto con gzip como con bzip2. Además, actualmente tar está muy integrado con ambos algoritmos de compresión y nos evita tener que utilizar comandos algo más complicados para comprimir y descomprimir ficheros
gzip
Con este comando podremos comprimir uno o varios ficheros dentro de un solo fichero con extensión .gz. El fichero original continuará en su sitio. Utiliza para comprimir el algoritmo de comprensión Lempel-Ziv.
De la siguiente manera se comprime el archivo desapareciendo el original. Al resultado se le añade la extensión .gz.
gzip file1
Podemos redefinir el archivo de salida, aunque también comprime el original.
gzip file1 > comprimido.gz
Si no queremos perder el archivo original utilizamos el parámetro –c que saca por pantalla el resultado y sólo tenemos que redirigirlo.
gzip –c file1 > file1.gz gzip –c file1 file2 > files.gz
Con este comando también podremos descomprimir, utilizando en parámetro -d. Si hemos comprimido dos archivos juntos, cuando ahora descomprimamos ese archivo no tendremos los dos archivos independientes, si no que tendremos uno sólo con la concatenación de ambos. También tener en cuenta que el fichero .gz desaparece al descomprimirlo.
gzip –d files.gz
gunzip
Comando para descomprimir los ficheros .gz. El fichero comprimido desaparece.
gunzip files.gz
bzip2
Comprime con las mismas opciones y propiedades que gzip, pero utilizando el algoritmo de compresión Burrows-Wheeler. Bzip2 comprime mucho mejor pero tarda más tiempo en llevarlo a cabo.
bzip2 file1 bzip2 –c file1 > file.bz2 bzip2 –d file.bz2
bunzip2
Comando para descomprimir los ficheros .bz2. El fichero comprimido desaparece.
bunzip2 files.bz2
tar
Comando para unir ficheros y directorios en un único fichero. El fichero o directorio origen no desaparece. Crea internamente una estructura de directorios idéntica a la que se copia, pero quitándole el directorio / para poder posteriormente descomprimirlo donde deseemos.
tar cf files.tar file1
tar cf files.tar directorio/
tar cf /root/files.tar /home/usuario/*
Para descomprimir un fichero .tar usaremos los parámetros xf. En este caso el fichero comprimido no desaparece.
tar xf files.tar
Para descomprimir en un directorio diferente al que nos encontramos utilizamos –C. El directorio de destino debe de existir.
tar xf files.tar –C directorio/
Para descomprimir el contenido utilizando rutas absolutas.
tar xf files.tar -P -C directorio/
Para listar el contenido de un archivo tar.
tar tvf files.tar
tar con gzip/bzip2
Es una práctica muy habitual encontrar ficheros comprimidos con la extensión .tar.gz o .tar.bz2. Consiste en utilizar ambas tecnologías de compresión. Se puede conseguir comprimiendo con tar y luego con gzip o bzip2. De esta manera aprovechamos la ventaja de comprimir directorios de tar y la gran compresión de gzip o bzip2.
Pero existe una manera mucho más cómoda que comprimir el fichero en dos ocasiones, y es utilizar unos parámetros determinados del comando tar, z para gzip y j para bzip2.
tar zcf manual.tar.gz manual/
tar jcf manual.tar.bz2 manual/
Para descomprimir esos mismos ficheros con un solo comando utilizaremos los mismos parámetros anteriores.
tar zxf manual.tar.gz
tar zxf manual.tgz
tar jxf manual.tar.bz2
Si solo queremos extraer un fichero o directorio del fichero comprimido lo podemos hacer indicando justo al final del comando el nombre y la ruta relativa (sin la barra raíz inicial) del fichero dentro del comprimido que queremos extraer:
tar jxf manual.tar.gz home/usuario/manual.xml tar jxf manual.tar.gz -C /root home/usuario/manual.xml
unzip
Comando para descomprimir los ficheros .zip generados en Windows. Linux puede descomprimirlos pero hay que saber que estos comandos no son libres.
unzip fichero.zip
unrar
Comando para descomprimir los ficheros .rar generados en Windows. Linux puede descomprimirlos pero hay que saber que estos comandos no son libres.
unrar fichero.rar
Para descomprimirlos con la ruta completa.
unrar x fichero.rar
zcat
Con este comando podemos visualizar el contenido de un fichero comprimido con gzip sin necesidad de tener que descomprimirlo previamente.
zcat messages.gz
Enlaces transversales de Book para Herramientas de compresión
Herramientas de compresión escrito por Rafa Morales está protegido por una licencia Creative Commons Atribución-NoComercial-SinDerivadas 4.0 Internacional