GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo comprimir y descomprimir archivos en Linux

La compresión es muy útil cuando se realizan copias de seguridad de archivos importantes y también cuando se envían archivos de gran tamaño a través de Internet. En este tutorial, discutiremos cómo comprimir y descomprimir archivos en Linux utilizando dos programas de línea de comandos, a saber, gzip y bzip2 .

Nota:

Comprimir un archivo ya comprimido agrega una sobrecarga adicional, por lo que obtendrá un archivo un poco más grande. Entonces, deja de comprimir un archivo comprimido.

Comprimir y descomprimir archivos en Linux

Como ya se ha dicho, los programas más utilizados para comprimir archivos en Linux y sistemas similares a Unix son:

  1. gzip
  2. bzip2

Primero, veremos el uso de Gzip.

1. Comprime y descomprime archivos usando el programa Gzip

El gzip es una utilidad para comprimir y descomprimir archivos utilizando el algoritmo de codificación Lempel-Ziv (LZ77).

1.1 Comprimir archivos

Para comprimir un archivo llamado ostechnix.txt , reemplazándolo con una versión comprimida con gzip, ejecute:

$ gzip ostechnix.txt

Gzip reemplazará el archivo original ostechnix.txt con una versión comprimida con gzip llamada ostechnix.txt.gz .

El comando gzip también se puede usar de otras formas. Un buen ejemplo es que podemos crear una versión comprimida de la salida de un comando específico. Mira el siguiente comando.

$ ls -l Downloads/ | gzip > ostechnix.txt.gz

El comando anterior crea una versión comprimida de la lista de directorios de la carpeta Descargas.

1.2 Comprimir archivos y escribir la salida en diferentes archivos (no reemplace el archivo original)

De forma predeterminada, el programa gzip comprimirá el archivo dado, reemplazándolo con una versión comprimida con gzip. Sin embargo, puede conservar el archivo original y escribir la salida en la salida estándar. Por ejemplo, el siguiente comando comprime ostechnix.txt y escribe la salida en output.txt.gz .

$ gzip -c ostechnix.txt > output.txt.gz

De manera similar, para descomprimir un archivo comprimido con gzip especificando el nombre del archivo de salida:

$ gzip -c -d output.txt.gz > ostechnix1.txt

El comando anterior descomprime output.txt.gz y escribe la salida en ostechnix1.txt expediente. En ambos casos, no eliminará el archivo original.

1.3 Descomprimir archivos

Para descomprimir el archivo ostechnix.txt.gz , reemplazándolo con la versión original sin comprimir, hacemos:

$ gzip -d ostechnix.txt.gz

También podemos usar gunzip para descomprimir los archivos.

$ gunzip ostechnix.txt.gz

1.4 Ver el contenido de los archivos comprimidos sin descomprimirlos

Para ver el contenido del archivo comprimido usando gzip sin descomprimirlo, use -c bandera como se muestra a continuación:

$ gunzip -c ostechnix1.txt.gz

Alternativamente, use zcat utilidad como a continuación.

$ zcat ostechnix.txt.gz

También puede canalizar la salida al comando "menos" para ver la salida página por página como se muestra a continuación.

$ gunzip -c ostechnix1.txt.gz | less
$ zcat ostechnix.txt.gz | less

Alternativamente, hay un zless programa que realiza la misma función que la canalización anterior.

$ zless ostechnix1.txt.gz

1.5 Comprimir archivo con gzip especificando el nivel de compresión

Otra ventaja notable de gzip es que admite el nivel de compresión. Admite 3 niveles de compresión como se indica a continuación.

  • 1 - Más rápido (peor)
  • 9 - Más lento (mejor)
  • 6 - Nivel predeterminado

Para comprimir un archivo llamado ostechnix.txt , reemplazándolo con una versión comprimida con gzip con mejor nivel de compresión, usamos:

$ gzip -9 ostechnix.txt

1.6 Concatenar varios archivos comprimidos

También es posible concatenar múltiples archivos comprimidos en uno. ¿Cómo? Echa un vistazo al siguiente ejemplo.

$ gzip -c ostechnix1.txt > output.txt.gz
$ gzip -c ostechnix2.txt >> output.txt.gz

Los dos comandos anteriores comprimirán ostechnix1.txt y ostechnix2.txt y los guardarán en un archivo llamado output.txt.gz .

Puede ver el contenido de ambos archivos (ostechnix1.txt y ostechnix2.txt) sin extraerlos usando cualquiera de los siguientes comandos:

$ gunzip -c output.txt.gz
$ gunzip -c output.txt
$ zcat output.txt.gz
$ zcat output.txt

Para obtener más detalles, consulte las páginas man.

$ man gzip

2. Comprime y descomprime archivos usando el programa bzip2

El bzip2 es muy similar al programa gzip, pero utiliza un algoritmo de compresión diferente llamado algoritmo de compresión de texto de clasificación de bloques Burrows-Wheeler y codificación Huffman. Los archivos comprimidos con bzip2 terminarán en .bz2 extensión.

Como dije, el uso de bzip2 es casi el mismo que el de gzip. Simplemente reemplace gzip en los ejemplos anteriores con bzip2 , cremallera con bunzip2 , zcat con bzcat y así sucesivamente.

Para comprimir un archivo usando bzip2, reemplazándolo con una versión comprimida, ejecute:

$ bzip2 ostechnix.txt

Si no desea reemplazar el archivo original, use -c marcar y escribir la salida en un nuevo archivo.

$ bzip2 -c ostechnix.txt > output.txt.bz2

Para descomprimir un archivo comprimido:

$ bzip2 -d ostechnix.txt.bz2

O,

$ bunzip2 ostechnix.txt.bz2

Para ver el contenido de un archivo comprimido sin descomprimirlo:

$ bunzip2 -c ostechnix.txt.bz2

O,

$ bzcat ostechnix.txt.bz2

Para obtener más detalles, consulte las páginas man.

$ man bzip2

Lectura sugerida:

  • Pigz - Comprime y descomprime archivos en paralelo en Linux

Resumen

En este tutorial, aprendimos qué son los programas gzip y bzip2 y cómo usarlos para comprimir y descomprimir archivos con algunos ejemplos en GNU/Linux. En la próxima guía, vamos a aprender cómo archivar archivos y directorios en Linux .


Linux
  1. Cómo comprimir archivos y directorios en Linux (con ejemplos)

  2. Cómo comprimir y descomprimir archivos en Linux

  3. Cómo unir dos archivos de texto en Linux

  4. Comando Tar en Linux (comprimir y descomprimir archivos)

  5. Cómo comprimir/descomprimir en Linux

Cómo comprimir archivos y directorios en Linux

Pigz – Comprime y descomprime archivos en paralelo en Linux

Cómo instalar Rclone en Linux y Unix

Comando tar de Linux:cómo comprimir archivos en Linux

Cómo Gzip archivos grandes (100GB+) más rápido en Linux

Cómo instalar y usar Pigz para comprimir archivos más rápido en Linux