mandato compress
Finalidad
Comprime datos.
Sintaxis
compress [ -c ] [ -C ] [ -d ] [ -F ] [ -f ] [ -n ] [ -q ] [ -v ] [ -V ] [ -b Bits ] [ File ... ]
Descripción
El mandato compress comprime los datos, utilizando la codificación Lempel-Ziv adaptable para reducir el tamaño de los archivos. Cada archivo original especificado por el parámetro Archivo se sustituye cuando es posible por un archivo comprimido con un .Z añadido a su nombre. Si el proceso de invocación tiene los privilegios adecuados, el archivo comprimido conserva la misma propiedad, modalidades y hora de modificación del archivo original. Si la vía de acceso del archivo que se especifica tiene más de 1023 bytes, el mandato no funciona. Si no se especifican archivos, la entrada estándar se comprime en la salida estándar. Si la compresión no reduce el tamaño de un archivo, se graba un mensaje en el error estándar y el archivo original no se sustituye.
La cantidad de compresión depende del tamaño de la entrada, del número de bits por código que especifique la variable Bits y de la distribución de las subseries comunes. Normalmente, el código fuente o el texto en inglés se reduce entre un 50 y un 60%. La compresión del mandato compress es más compacta y tarda menos tiempo en calcularse que la compresión conseguida por la codificación Huffman (tal como se utiliza en el mandato pack ) o la codificación Huffman adaptativa.
Distintivos
| Elemento | Descripción |
|---|---|
| -b Bits | Especifica el número máximo de bits a utilizar para sustituir subseries comunes en el archivo. El valor de la variable Bits debe estar en el rango de 9 bits a 16 bits. El valor predeterminado de la variable Bits es de 16 bits. Al comprimir datos, el algoritmo utiliza primero todos los códigos de 9 bits (257 a 512) para sustituir tantas subseries como sea posible. A continuación, utiliza todos los códigos de 10 bits, y así sucesivamente, continuando hasta que se alcance el límite especificado por el distintivo -b . |
| -c | Escribe en la salida estándar. No se cambia ningún archivo. |
| -C | Produce una salida compatible con Berkeley Software Distribution (BSD) Revision 2.0. |
| -d | Hace que el mandato compress funcione exactamente igual que el mandato uncompress . |
| -f o -F | Fuerza la compresión. Los distintivos -f y -F son intercambiables. Sobrescribe el archivo File.Z si ya existe. Después de obtener el valor de la variable Bits , el mandato compress comprueba periódicamente la proporción de compresión. Si está aumentando, el mandato compress continúa utilizando el diccionario de código existente. Sin embargo, si la proporción de compresión disminuye, el mandato compress descarta la tabla de subseries y la vuelve a crear. La reconstrucción de la tabla permite que el algoritmo se adapte al siguiente bloque del archivo. Cuando el archivo .Z ya existe, si no se proporciona el distintivo -f y el proceso no se está ejecutando en segundo plano, solicita que se verifique si se debe sobrescribir el archivo .Z existente. |
| -n | Omite la cabecera de archivo comprimido del archivo comprimido. Nota: Si se utiliza esta opción, también se debe utilizar el distintivo -n cuando se utiliza el mandato uncompress para descomprimir el archivo.
|
| -q | Suprime la visualización de las estadísticas de compresión generadas por el distintivo -v . Si hay varios distintivos -v y -q en la misma línea de mandatos, el último especificado controla la visualización de las estadísticas. |
| -v | Escribe el porcentaje de compresión. |
| -V | Escribe la versión actual y las opciones de compilación en el error estándar. |
Parámetros
| Elemento | Descripción |
|---|---|
| Archivo | Especifica el archivo que se va a comprimir. |
Valores de retorno
Si se produce un error, el estado de salida es 1. Si el mandato compress sale sin comprimir un archivo, sale con un estado de 2. De lo contrario, el mandato compress sale con un estado de 0.
El mandato compress detecta un error y sale con un estado de 1 si se produce alguno de los sucesos siguientes:
- Un archivo de entrada no es un archivo normal.
- Un nombre de archivo de entrada es demasiado largo para añadir la extensión .Z .
- No se puede leer un archivo de entrada o no se puede grabar en un archivo de salida.
Estado de salida
| Elemento | Descripción |
|---|---|
| 0 | Finalización satisfactoria. |
| 1 | Se ha producido un error. |
| 2 | Uno o varios archivos no se han comprimido porque pueden haber aumentado de tamaño (y no se ha especificado el distintivo -f ). |
| > 2 | Se ha producido un error. |
Seguridad
Ejemplo
Para comprimir el archivo foo y escribir el porcentaje de compresión en error estándar, especifique el mandato siguiente:
compress -v foo
El archivo foo se comprime y se renombra como foo.Z.