Ver destacados

Comandos GZIP, GUNZIP, ZCAT y TAR en Linux

Te explicamos qué son y cómo usar los comandos GZIP, GUNZIP y ZCAT en Linux para comprimir y descomprimir archivos.
Escrito por
30.7K Visitas  |  Publicado jul 13 2017 17:50
Favorito
Compartir
Comparte esta pagina a tus Amigos y Contactos usando las siguientes Redes Sociales


APARTADOS DEL TUTORIAL

Cuando gestionamos ambientes Linux es muy importante conocer el funcionamiento y rol de muchos de los comandos que nos permiten efectuar determinadas tareas en Linux. Hoy hablaremos de tres en particular que nos permiten gestionar todo lo relacionado con la compresión o expansión de archivos.

 


1. GZIP


 

Este comando se encarga de la reducción del tamaño de los archivos usando codificación LZ77 (Lempel-Ziv). GZIP convierte los archivos con las siguientes extensiones, sin perder su calidad ni sus propiedade4s, dependiendo el entorno usado:

 

Extensiones GZIP
  • .gz: Máquinas virtuales
  • .z: MSDOS, FAT de Windows o OS/2

 

GZIP es una abreviación de GNU ZIP la cual es el reemplazo del programa compress. Cuando un nombre de archivo es demasiado largo GZIP se encarga de truncarlo para su correcta administración. Por defecto GZIP conserva el nombre original del archivo y todas sus propiedades sin afectar ninguna, lo que facilita su gestión y correcta ejecución. Cuando hemos comprimido un archivo con GZIP podremos descomprimirlo usando alguna de las siguientes opciones:

 

Descomprimir GZIP
  • gzip –d
  • zcat
  • gunzip

 

En caso de que el nuevo nombre del archivo a descomprimir no esté en el lineamiento del sistema de archivos actual se creara uno nuevo. GUNZIP reemplaza cada archivo que comprimamos cuya terminación sea .gz, -gz, .z, -z, o _z y del mismo modo reconoce las extensiones .tgz y .taz. Con este comando tenemos la posibilidad de descomprimir archivos que hayan sido creados por alguna de las siguientes herramientas:

gzip, zip, compress, compress -H o pack.
GZIP detecta automáticamente estas extensiones y ejecuta su proceso.Podemos extraer múltiples archivos Zip usando unzip.

 

GZIP
gzip [ -acdfhlLnNrtvV19 ] [-S sufijo] [ nombre ... ]

 

 


2. ZCAT


 

Su uso es idéntico a gunzip –c, y su función principal es descomprimir una lista de archivos a través de la línea de comandos.

 

ZCAT descomprimirá el archivo si cuenta con el número mágico independiente de si es o no .gz. Adicional con ZCAT tenemos la posibilidad de ver el contenido de un archivo comprimido sin la necesidad de descomprimirlo tal como si usáramos el comando cat.

 

ZCAT
zcat [ -fhLV ] [ nombre ... ]

 

 


3. GUNZIP


 

Con GUNZIP tenemos la posibilidad de comprimir archivos usando la tecnología Lempel-Ziv y permite que determinados archivos presenten una reducción hasta del 60% en su tamaño lo cual ayuda a nivel de espacio en el equipo. GUNZIP conserva todas las propiedades del archivo a comprimir o descomprimir.

 

 

GUNZIP
gunzip [ -acfhlLnNrtvV ] [-S sufijo] [ nombre...  ]

 


4. TAR


 

Uno de los comandos para descomprimir o comprimir archivos a través de la terminal en Linux es el comando tar, si quieres información sobre este teclea en una terminal man tar y verás todas sus opciones. Puede comprimir un directorio completo o un fichero simple, además puede trabajar de forma recursiva (por ejemplo comprimiendo todo lo que se encuentra dentro de un directorio que le especifíques).

 

Comprimir archivos usando tar

Tenemos que ejecutar la siguiente instrucción:
tar -czvf archivo.tar.gz nombreDeArchivoAComprimir
Significado de los parámetros
  • -c: Crea un archivo
  • -z: Comprime el archivo con gzip.
  • -v: Para activar el modo “verbose”. Es opcional, pero te puede servir de ayuda.
  • -f: Te permite especificar el nombre del archivo.

 

Vamos a ver un ejemplo, si queremos comprimir una carpeta llamada Solvetic con un nombre comprimidoSolvetic:

tar -czvf comprimidoSolvetic.tar.gz Solvetic

 

Descomprimir archivos usando tar

Debemos ejecutar la siguiente instrucción:
tar -xzvf archivoComprimido.tar.gz
Los parámetros son los mismos, salvo que se ha cambiado -c por -x, este sirve para indicar que queremos extraer el contenido.

 

Si quieres extraer el contenido en un directorio diferente en el que estás situado añadimos al final -C directorio (la C aquí es mayúscula, no como la de crear que es minúscula).

tar -xzvf archivoComprimido.tar.gz –C directorioDondeExtraer
Vamos a hacer un ejemplo queremos descomprimir el archivo que hemos comprimido anteriormente comprimidoSolvetic.tar.gz y lo queremos guardar en la directorio padre (..):
tar -xzvf comprimidoSolvetic.tar.gz –C ./..

 

Imagina que solo quieres extraer un cierto contenido del paquete, para ello sería interesante listar el contenido del tar, lo puedes hacer de la siguiente manera:

tar –tf archivo.tar.gz tar -tzf archivo.tar.gz

 

Y una vez ya hemos visto el contenido, imagina que te interesan los ficheros .txt, entonces lo que ejecutaríamos es lo siguiente (es posible que no necesites poner --wildcards):

tar –xvf archivo.tar.gz –-wildcards “*.txt”
A continuación os muestro la salida en la terminal del uso de la última instrucción, primeramente se ve el contenido de todo el .tar.gz y en la segunda parte apreciamos el contenido que se extrae (todos los archivos .txt).

 

 

 


5. Parámetros de los comandos

 

Cada parámetro indicado significa lo siguiente
  • -a, --ascii: Es el modo de texto ASCII, es decir, convierte finales de línea en convenciones normales.
  • -c, --stdout, --to-stdout: Conserva los archivos originales sin cambios.
  • -d, --decompress, --uncompress: Descomprime un archivo
  • -f, --force: Forza la compresión o descompresión de uno o más archivos
  • -h, --help: Despliega la ayuda del comando en mención
  • -l, --list: Contamos con las siguientes opciones:
  • compressed size: Tamaño del archivo comprimido

 

Radio de compresión
  • uncompressed size: Tamaño del archivo descomprimido
  • uncompressed_name: Nombre del archivo descomprimido
  • -L, --license: Licencia del comando
  • -n, --no-name: Al momento de la compresión no guarda el nombre del archivo original
  • -q, --quiet: Elimina todas las advertencias
  • -r, --recursive: Permite recorrer la estructura de directorios de forma recursiva
  • -t, --test: Prueba la integridad del archivo comprimido
  • -v, --verbose: Despliega el nombre y porcentaje reducido de cada archivo procesado
  • -V, --version: Despliega la versión actual del comando
  • ast, --best: Esta opción nos permite regular la velocidad de compresión de los archivos donde uno (1) es rápido y nueve (9) es mejor.

 

 

La forma de uso de cada comando es la siguiente:

gzip fichero a comprimir
gunzip fichero a descomprimir.gz
zcat archivo a visualizar.gz

 

Cada uno de estos comandos nos ofrece opciones prácticas para la múltiple gestión de los archivos en Linux.

 

En este tutorial aprenderás los comandos que más utlizan los administradores de sistemas en Linux

¿Te ayudó este Tutorial?

Ayuda a mejorar este Tutorial!
¿Quieres ayudarnos a mejorar este tutorial más? Puedes enviar tu Revisión con los cambios que considere útiles. Ya hay 0 usuario que han contribuido en este tutorial al enviar sus Revisiones. ¡Puedes ser el próximo!