Hablamos de los comandos gzip y gunzip en GNU/Linux. El primero se encarga de comprimir en formato (.gz) y el segundo de descomprimir ficheros con dicho formato. Pero vayamos un poco más al detalle con cada uno de ellos.



Comando gzip

Gzip (GNU Zip) es una herramienta de compresión, que se utiliza para truncar el tamaño de un archivo. Por defecto el fichero original será reemplazado por el archivo comprimido con extensión (.gz), siempre que sea posible, manteniendo los mismos modos de propiedad, acceso y tiempo de modificación.

Veamos como funciona.

Su funcionamiento sería así:

1 gzip fichero1 fichero2 fichero3 … gzip fichero1 fichero2 fichero3 …

Por ejemplo:

1 gzip fichero1.txt fichero2.txt fichero3.txt gzip fichero1.txt fichero2.txt fichero3.txt

Si deseamos comprimir más de un archivo, podemos usar el comando ‘cat‘ y gzip utilizando tuberías o pipes.

Aquí un ejemplo:

1 cat fichero1.txt fichero2.txt | gzip > final.gz cat fichero1.txt fichero2.txt | gzip > final.gz

Mostrar información

En cambio, con el parámetro -l muestra información sobre la relación de compresión o cuanto se ha comprimido el archivo.

1 gzip -l file.gz gzip -l file.gz

Comprimir un directorio

Por defecto el comando gzip no podrá comprimir un directorio porque solo puede comprimir un solo archivo. Para comprimir un directorio tenemos que usar el comando ‘tar‘.

El guión (-) no es obligatorio en el comando ‘tar‘. De este comando los parámetros habituales son:

'c' para crear.

para crear. 'v' es para verbose, para mostrar la salida.

es para verbose, para mostrar la salida. 'f' para mencionar el destino de su archivo de salida.

para mencionar el destino de su archivo de salida. 'z' para especificar la compresión con gzip.

para especificar la compresión con gzip. 'x' para descomprimir ficheros gzip.

Veamos un ejemplo

1 tar cf - "directorio" | gzip > "Nombre del directorio" tar cf - "directorio" | gzip > "Nombre del directorio"

O bien:

1 tar cvfz informacion.tar.gz informacion tar cvfz informacion.tar.gz informacion

Descomprimir utilizando gzip

Realmente no es necesario utilizar gunzip para descomprimir un fichero comprimido, aunque hablaremos de esta herramienta a continuación, ya que con el parámetro -d podemos realizar dicho proceso.

Por ejemplo:

1 gzip -d fichero.gz gzip -d fichero.gz

Comando gunzip

Gunzip (GNU unzip) es una herramienta de línea de comandos para descomprimir archivos gzip.

Su uso es realmente muy sencillo.

El común es el siguiente:

1 gunzip fichero1.gz fichero2.gz fichero3.gz gunzip fichero1.gz fichero2.gz fichero3.gz

También admite parámetros, los más habituales son los siguientes.

Evitar que borre el fichero original

Por defecto, una vez descomprimido, gunzip eliminará el archivo comprimido. Podemos utilizar la opción -k para mantener el archivo:

1 gunzip -k fichero.gz gunzip -k fichero.gz

Descomprimir en otra ubicación

Para escribir la salida en el terminal, podemos utilizar la opción -c . Esto permite mantener el archivo comprimido y opcionalmente descomprimirlo en otra ubicación:

1 gunzip -c fichero.gz > / directorio / subdirectorio / nombredefichero gunzip -c fichero.gz > /directorio/subdirectorio/nombredefichero

Si hace falta también puede descomprimir de forma recursiva, con el parámetro -r

1 gunzip -r directorio gunzip -r directorio

Mostrar el contenido de un fichero

Listar el contenido de un fichero, para ello, al igual que con gzip, podemos utilizar el parámetro -l

1 gunzip -l fichero.gz gunzip -l fichero.gz

Para ver el contenido de forma más extensa, podemos utilizar el modo “verbose”, con -v

1 gunzip -lv fichero.gz gunzip -lv fichero.gz

Existen más herramientas de compresión y descompresión en nuestras distribuciones GNU/Linux, de ellas hablamos en otra entrada.