HOWTO · Linux
Cómo descomprimir un archivo .gz en Linux
Aprende a descomprimir un archivo .gz o extraer un archivo .tar.gz en Linux con gunzip, gzip -d y tar, y a elegir si quieres conservar el original comprimido.
En esta página
Para descomprimir un archivo .gz independiente en Linux, usa gunzip filename.gz o gzip -d filename.gz. Para desempaquetar un archivo .tar.gz, usa tar -xzf filename.tar.gz. De forma predeterminada, la descompresión elimina la entrada comprimida; añade -k cuando quieras conservarla.
Qué son los archivos .gz y .tar.gz
Un archivo .gz es un único archivo comprimido con gzip; la extensión no significa que contenga una colección de archivos. Un archivo .tar.gz es un archivo tar que luego se ha comprimido con gzip, por lo que puede contener varios archivos y directorios. Usa gunzip o gzip -d para un archivo .gz independiente, y tar para extraer un archivo .tar.gz.
Descomprimir un archivo .gz con gunzip
Ejecuta gunzip report.txt.gz para descomprimir el archivo en su directorio actual. Tras una descompresión correcta, el resultado es report.txt, y report.txt.gz se elimina. Para conservar la copia comprimida, añade -k, como en gunzip -k report.txt.gz.
Este ejemplo autónomo crea un archivo de muestra, lo comprime, lo descomprime conservando la copia comprimida e imprime el contenido restaurado:
tmpdir=$(mktemp -d)
trap 'rm -rf "$tmpdir"' EXIT
cd "$tmpdir"
printf 'Linux notes\n' > notes
gzip notes
gunzip -k notes.gz
cat notes
Linux notes
Descomprimir un archivo .gz con gzip -d
La opción -d indica a gzip que descomprima, por lo que gzip -d report.txt.gz realiza la misma tarea básica que gunzip report.txt.gz. Escribe report.txt junto a la entrada y normalmente elimina report.txt.gz tras una descompresión correcta. Usa gzip -dk report.txt.gz para conservar ambos archivos. Elige cualquiera de los dos comandos según el nombre que te resulte más fácil de recordar; ambos procesan un único archivo comprimido con gzip.
Extraer un archivo .tar.gz con tar
Usa tar -xzf project.tar.gz para extraer un archivo comprimido con gzip. Las opciones significan: -x extrae, -z gestiona la compresión gzip y -f indica el nombre del archivo. De forma predeterminada, tar escribe las rutas archivadas bajo el directorio de trabajo actual, así que ejecuta el comando desde el directorio donde quieres que se creen esas rutas. Para elegir otro destino, añade -C /path/to/destination, por ejemplo tar -xzf project.tar.gz -C /tmp/project.
Un archivo .tar.gz y un archivo .gz independiente necesitan comandos diferentes: tar lee la capa de archivo y restaura los archivos que contiene, mientras que gunzip descomprime un flujo gzip en un archivo. El comando mostrado no enumera las rutas extraídas; usa la opción detallada -v de tar si quieres que imprima los nombres de los miembros a medida que los extrae.
Comprimir un archivo con gzip
Para comprimir un archivo, ejecuta gzip report.txt. Esto crea report.txt.gz y normalmente elimina el original report.txt. Añade -k, como en gzip -k report.txt, para conservar tanto el archivo de origen como el comprimido. Gzip comprime cada archivo indicado por separado; usa tar primero cuando necesites agrupar varias rutas en un solo archivo, y luego comprime ese archivo para crear un archivo .tar.gz.