Índice del artículo

compress, uncompress

Comprime descomprime archivos

Sintaxis básica :

$ compress [archivo]
$ uncompress [archivo]

La utilidad compress reduce el tamaño del archivo, y los archivos son reemplazados por uno con la extension .Z (Nota: que la Z es mayúscula) mantiene los mismo modos del dueño del archivo, y mantiene también la fecha y hora de modficación del archivo.

El procentaje de compresión depende del tamaño del archivo de entrada, entre otros aspectos. Por ejemplo un texto en inglés (o un código fuente) puede ser comprimido entre un 50% o 60%.

Se puede utilizar el parámetro -b bitspara establecer el límite máximo (en bits) para subcadenas de código comunes. bits puedes ser un valor comprendido entre 9 y 16, donde por default es 16. Entre menor sea el número, menor será la compresión.

uncompress restaura los archvos a su estado original una vez que han sido comprimidos utilizando la utilidad compress.

Ejemplo práctico:

$ ls -l modulos.txt
-rwxr--r-- 1 condor staff 130275 dbre 3 18:24 modulos.txt


Es un archivo que contiene 130,275 caracteres

$ compress modulos.txt
$ ls -l modulos.txt.Z
-rwxr--r-- 1 condor staff 46147 dbre 3 18:24 modulos.txt.Z


Después de la compresión el archivo es sólo de 46,147 caracteres

omo se menciono el archivo modulos.txt fue reemplazado por modulos.txt.Z por lo tanto al ejecutar ls -l modulos.txt nos regresará un mensaje de aviso informando que no encontró el archivo.

Para descomprimir:

$ uncompress modulos.txt.Z
$ ls -l modulos.txt
-rwxr--r-- 1 condor staff 130275 dbre 3 18:24 modulos.txt

Ahora si la compresión la hicieramos con el comando -b 9 el el archivo .Z sería mayor al anterior.

$ compress -b 9 modulos.txt
$ ls -l modulos.txt.Z
-rwxr--r-- 1 condor staff 96348 dbre 3 18:24 modulos.txt.Z

Como vemos, ahora el archivo es de 96,348 caracteres.

gzip, gunzip

Sintaxis básica

$ gzip [archivo]
$ gunzip [archivo]

gzip reduce el tamaño del archivo nombrado, cuando es posible, cada archivo es remplazado por otro con el mismo nombre agregando la extension .gz manteneidno el mismo dueño del archivo, tiempos de acceso y modificación. En particula, gzip solo intenta comprimir archivos regulares ignorando ligas simbólicas.

gunzip, toma la lista de archivos de la lista de comando y reemplaza aquellos cuyo nombres terminan con .gz, -gz, .z, -z, _z ó .Z, puede descomprimir archivos creados con otros comandos diferentes al gzip como compress ó pack

Un archivo comprimido con gzip puede ser regresado a su forma original utilizando gzip -d o gunzip.

Para indicarle a gzip el tamaño de compresión podemos utiliar los parámetros numéricos del -1 al -9 donde -1 nos genera un archivo más grande pero es más rápido y -9 nos genera un archivo más pequeño pero es más lento. Si no especificamos esta característica por default se ejcuta con -6

Utilicemos el mismo archivo para comparar la compresión.

$ gzip modulos.txt
$ ls -l modulos.txt.gz
-rwxr--r-- 1 renan staff 30356 dbre 3 18:24 modulos.txt.gz

Ahora el archivo contiene tan sólo 30,356 caracteres. Para descomprimir:

$ gzip modulos.txt