COMPRESS(1)

NOM
compress, uncompress, zcat – Compression et expansion de données

SYNOPSIS
compress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -r ] [ -b bits ] [ -- ] [ fichier ... ]
uncompress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -- ] [ fichier ... ]
zcat [ -V ] [ -- ] [ fichier ... ]

DESCRIPTION
compress réduit la taille des fichiers indiqués un utilisant le codage adaptatif de Lempel-Ziv. À chaque fois que c’est possible, chaque fichier est remplacé par un autre d’extension .Z, tout en conservant les mêmes modes de propriétaire et les mêmes heures d’accès et de modification. Si aucun fichier n’est indiqué, l’entrée standard est compressée sur la sortie standard. compress n’essaie de compresser que les fichiers normaux. En particulier, il ignore les liens symboliques. Si un fichier possède plusieurs liens physiques, compress refuse la compression à moins que l’option -f ne soit fournie.

Si l’option -f n’est pas indiquée et que compress est exécuté en arrière-plan, l’utilisateur est invité à indiquer si un fichier existant doit être écrasé.

Les fichiers compressés peuvent être restaurés dans leur forme originelle en utilisant uncompress ou zcat(1)

uncompress prend une liste de fichiers sur sa ligne de commande et remplace chaque fichier dont le nom se termine par .Z et qui commence avec le nombre magique correct par un fichier décompressé sans le suffixe .Z. Ce dernier aura les mêmes mode, propriétaire et horodatages que le fichier compressé.

L’option -k fait que compress et uncompress conservent les fichiers d’entrée au lieu de les supprimer automatiquement.

L’option -c fait que compress et uncompress écrivent sur la sortie standard : aucun fichier n’est modifié.

zcat est identique à uncompress -c. zcat décompresse soit une liste de fichiers indiquée sur la ligne de commande ou son entrée standard, et écrit les données décompressées sur la sortie standard. zcat décompresse les fichiers possédant le numéro magique correct qu’ils aient ou non le suffixe .Z.

Si l’option -r est indiquée, compress opère récursivement. Si un des noms de fichier indiqués sur la ligne de commande est un répertoire, compress descend dans ce répertoire et compresse tous les fichiers trouvés. Lors de la compression, tout fichier déjà compressé est ignoré et lors de la décompression, tout fichier déjà décompressé est ignoré.

L’option -V fait que chacun de ces programmes affiche sur la sortie standard d’erreur sa version et son niveau de correctif, ainsi que tout drapeau de préprocesseur indiqué lors de la compilation, avant de réaliser la compression ou la décompression.

compress utilise l’algorithme modifié Lempel-Ziv popularisé dans « A Technique for High Performance Data Compression », Terry A. Welch, IEEE Computer, vol. 17, no. 6 (juin 1984), pp. 8-19. Les sous-chaines communes sont d’abord remplacées par des codes 257 et supérieurs de 9 bits. Quand le code 512 est atteint, l’algorithme bascule sur des codes de 10 bits et continue jusqu’à ce que la limite indiquée par l’option -b soit atteinte (par défaut 16). bits doit être entre 9 et 16. La valeur par défaut peut être changée dans le source pour permettre à compress d’être exécuté sur une machine moins puissante.

Lorsque la limite bits est atteinte, compress vérifie périodiquement le taux de compression. S’il augmente, compress continue d’utiliser le dictionnaire de codes existant. Toutefois, si le taux de compression diminue, compress supprime la table de sous-chaines et la reconstruit entièrement. Cela permet à l’algorithme de s’adapter au prochain « bloc » du fichier.

Remarquez que l’option -b est omise pour uncompress puisque le paramètre bits indiqué lors de la compression est encodé dans la sortie, à côté d’un nombre magique, pour assurer que ni la décompression de données aléatoires, ni la recompression de données compressées ne soient tentées.

L’ampleur de la compression obtenue dépend de la taille de l’entrée, du nombre de bits par code et de la distribution des chaines communes. Typiquement, du texte de code source ou en anglais est réduit de 50 à 60 %. La compression obtenue est généralement meilleure que celle réalisée par le codage de Huffman (tel qu’utilisé par pack) ou le codage adaptatif de Huffman (compact), et nécessite moins de temps de calcul.

Avec l’option -v, un message est affiché indiquant le pourcentage de réduction de chaque fichier compressé.

-- peut être utilisé pour indiquer la fin de l’analyse des options et pour obliger à traiter les arguments restants comme des chemins.

DIAGNOSTICS
Le code de retour et normalement 0. Si le dernier fichier est plus grand après la compression (essayée), le code de retour est 2. Si une erreur se produit, le code de retour est 1.

Usage : compress [-dfvcVr] [-b maxbits] [fichier ...]
Des options non autorisées ont été indiquées dans la ligne de commande.
Missing maxbits
maxbits doit suivre l’option -b.
file: not in compressed format
Le fichier indiqué à uncompress n’est pas compressé.
file: compressed with xx bits, can only handle yy bits
Le fichier a été compressé par un programme qui peut traiter avec plus de bits que le code de compression sur cette machine. Recompresser le fichier avec bits inférieur.
file: already has .Z suffix -- no change
Le fichier est supposé être déjà compacté. Renommez le fichier et essayez à nouveau.
file: filename too long to tack on .Z
Le fichier ne peut être compressé parce que son nom comporte plus de 12 caractères. Renommez et essayez de nouveau. Ce message n’apparait pas sur les systèmes BSD.
file already exists; do you wish to overwrite (y or n)?
Répondez « y » pour écraser le fichier de sortie, et « n  » dans le cas contraire.
uncompress: corrupt input
Une violation SIGSEGV a été détectée qui signifie généralement que le fichier d’entrée est corrompu.
Compression: xx.xx%
Pourcentage de l’entrée sauvé par la compression (ne concerne que -v).
-- not a regular file or directory: ignored
Quand le fichier d’entrée n’est pas un fichier ou un répertoire normal (par exemple, un lien symbolique, un socket, un FIFO, un fichier de périphérique), il est conservé inchangé.
-- has xx other links: unchanged
Le fichier d’entrée comporte des liens, il est conservé inchangé. Consulter ln(1) pour plus d’informations. Utilisez l’option -f pour forcer la compression de fichiers à liens multiples.
-- file unchanged
Aucune réduction n’est réalisée par la compression, l’entrée n’est pas modifiée.

BOGUES
Bien que les fichiers compressés soient compatibles entre machines ayant beaucoup de mémoire, -b12 devrait être utilisé pour le transfert de fichier vers des architectures ayant un petit espace de traitement de données (64 Kio ou moins, comme dans les séries PDP de DEC, 80286 d’Intel, etc.).

VOIR AUSSI
pack(1), compact(1)

TRADUCTION
La traduction française de cette page de manuel a été créée par Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.