Empaquetar, comprimir y descomprimir archivos en Linux

Con lo siguientes comandos puedes comprimir y descomprimir archivos y directorios desde la terminal.

Cuando trabajamos en Linux frecuentemente necesitamos empaquetar y/o comprimir ficheros, en este post te explicaré como hacerlo.

Primero vamos a definir qué es empaquetar y qué es comprimir para tener claros los conceptos:

  • Empaquetar: Es agrupar en un solo fichero varios ficheros y/o directorios.
  • Comprimir: Es reducir el tamaño de un fichero a través del uso de un algoritmo de compresión.

Empaquetar

En linux contamos con el comando tar, que nos permite realizar el proceso de empaquetación, su sintaxis es la siguiente:

tar [opciones] [nombre_fichero_tar] [directorio_origen]

Las opciones más utilizadas son (la versión con un guion es la corta y con dos guiones la larga, pero hacen lo mismo):

  • -c --create: Crea un nuevo archivo.
  • -x --extract: Extrae fucheros de un archivo.
  • -v --verbose: Lista detalladamente los ficheros procesados.
  • -f [fichero]: Empaqueta o desempaqueta en o hacia un fichero.
  • -t --list: Lista los contenidos de un archivo.

Algunos ejemplos de uso son los siguientes:

Crear un archivo tar llamado edteam.tar con los archivos del directorio cursos.

tar -cf edteam.tar cursos

Crear un archivo tar llamado edteam.tar con los archivos del directorio cursos mostrando el detalle de los ficheros procesados.

tar -cvf edteam.tar cursos

Ver el contenido del archivo edteam.tar

tar -tf edteam.tar

Comprimir

Los comandos gzip y gunzip permiten comprimir y descomprimir ficheros respectivamente, su sintaxis básica es:

gzip [archivo_a_comprimir]
gunzip [archivo_a_descomprimir]

Por ejemplo, para comprimir el archivo edteam.tar usaremos:

gzip edteam.tar

El comando anterior generará el archivo edteam.tar.gz, de manera que para descomprimir dicho archivo usaremos:

gunzip edteam.tar.gz

También podemos realizar el proceso de empaquetación y compresión a través de una sola instrucción, agregando la opción -z al comando tar.

Veamos algunos ejemplos:

Crear un archivo empaquetado y comprimido llamado edteam.tar.gz con los archivos del directorio cursos mostrando el detalle de los ficheros procesados.

tar -cvzf edteam.tar.gz cursos

Desempaqueta y descomprime el archivo edteam.tar.gz mostrando el detalle de los ficheros procesados.

tar -xvzf edteam.tar.gz

Comprimir con zip

Además de gzip y unzip, podemos comprimir y descomprimir a través de zip y unzip respectivamente, este formato de compresión es el más utilizado en sistemas operativos Windows.

Su sintaxis básica es la siguiente:

zip -r [nombre_fichero_zip] [directorio_a_comprimir]
unzip [nombre_fichero_zip]

Crear un archivo comprimido llamado edteam.zip con los archivos del directorio cursos:

zip -r edteam.zip cursos

Descomprimir el archivo edteam.zip

unzip edteam.zip

Espero puedas poner en práctica esta información para mejorar tus habilidades con la terminal de Linux.

Si quieres saber más, tenemos un curso de Linux Desde Cero. ¡Nos vemos en clases!

Sigue leyendo