Il s'agit de la commande lbzip2 qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
lbzip2 - utilitaire parallèle bzip2
SYNOPSIS
lbzip2|bzip2 [-n WTHRS] [-k|-c|-t] [-d] [-1 .. -9] [-f] [-s] [-u] [-v] [-S] [ DOSSIER ]
lbunzip2|bunzip2 [-n WTHRS] [-k|-c|-t] [-z] [-f] [-s] [-u] [-v] [-S] [ DOSSIER ]
lbzcat|bzcat [-n WTHRS] [-z] [-f] [-s] [-u] [-v] [-S] [ DOSSIER ]
lbzip2|bzip2|lbunzip2|bunzip2|lbzcat|bzcat -h
DESCRIPTION
Compresser ou décompresser DOSSIER opérandes ou entrée standard vers des fichiers normaux ou sortie standard
en utilisant l'algorithme de compression de texte de tri par blocs de Burrows-Wheeler. Les lbzip2 utilitaire
utilise plusieurs threads et un séparateur lié à l'entrée même lors de la décompression . Bz2 fichiers
créé par la norme bzip2.
La compression est généralement considérablement meilleure que celle obtenue par des
Compresseurs basés sur LZ77/LZ78, et compétitifs avec tous les meilleurs de la famille PPM de
compresseurs statistiques.
La compression est toujours effectuée, même si le fichier compressé est légèrement plus volumineux que le
original. Le pire cas d'extension concerne les fichiers de longueur nulle, qui s'étendent jusqu'à quatorze
octets. Les données aléatoires (y compris la sortie de la plupart des compresseurs de fichiers) sont codées avec
expansion asymptotique d'environ 0.5%.
Les options de la ligne de commande sont volontairement très similaires à celles de bzip2 ainsi que gzip, mais
ils ne sont pas identiques.
INVOCATION
Le mode de fonctionnement par défaut est la compression. Si l'utilitaire est invoqué en tant que lbunzip2 or
bunzip2, le mode passe en décompression. Appeler l'utilitaire en tant que lbzcat or bzcat
sélectionne la décompression, avec le flux d'octets décompressé écrit sur la sortie standard.
OPTIONS
-n WTHRS
Réglez le nombre de fils de (dé)compresseur sur WTHRS. Si cette option n'est pas
spécifié, lbzip2 essaie d'interroger le système pour le nombre de processeurs en ligne (si
l'environnement de compilation et l'environnement d'exécution le prennent en charge), ou
se termine avec une erreur (s'il est incapable de déterminer le nombre de processeurs en ligne).
-k, --garder
Ne pas supprimer DOSSIER opérandes après (dé)compression réussie. Ouvrir l'entrée normale
fichiers avec plus d'un lien.
-c, --stdout
Écrire la sortie sur la sortie standard, même lorsque DOSSIER les opérandes sont présents. Implique -k
et exclut -t.
-t, --test
Tester la décompression ; rejeter la sortie au lieu de l'écrire dans des fichiers ou standard
sortir. Implique -k et exclut -c. À peu près équivalent à passer -c ainsi que
rediriger la sortie standard vers le seau de bits.
-d, --décompresser
Forcer la décompression sur le mode de fonctionnement sélectionné par le nom d'appel.
-z, --compresse
Forcer la compression sur le mode de fonctionnement sélectionné par le nom d'appel.
-1 .. -9
Définissez la taille du bloc de compression sur 100K .. 900K, par incréments de 100K. Ignoré pendant
décompression. Voir également la section TAILLE DE BLOC ci-dessous.
--vite Alias pour -1.
--meilleur Alias pour -9. C'est la valeur par défaut.
-f, --Obliger
Ouvrez les fichiers d'entrée non réguliers. Ouvrez les fichiers d'entrée avec plus d'un lien, cassant
liens quand -k n'est pas spécifié en plus. Essayez de supprimer chaque fichier de sortie avant
l'ouvrir. Par défaut lbzip2 n'écrasera pas les fichiers existants ; Si tu veux ça
se produire, vous devez spécifier -f. Si -c ainsi que -d sont également donnés ne rejettent pas les fichiers
pas au format bzip2, copiez-les simplement sans modification ; sans pour autant -f lbzip2 s'arrêterait
après avoir atteint un fichier qui n'est pas au format bzip2.
-s, --petit
Réduisez l'utilisation de la mémoire au détriment des performances.
-u, --séquentiel
Effectuez le fractionnement des blocs d'entrée de manière séquentielle. Cela peut améliorer le taux de compression et
réduira l'utilisation du processeur, mais dégradera l'évolutivité.
-v, --verbeux
Soyez plus bavard. Imprimer des informations plus détaillées sur la progression de la (dé)compression sur
erreur standard : avant de traiter chaque fichier, imprimez un message indiquant les noms des
fichiers d'entrée et de sortie ; pendant la (dé)compression, imprimez un pourcentage approximatif de
l'exhaustivité et l'heure d'arrivée estimée (uniquement si l'erreur type est liée à
un terminal); après traitement de chaque fichier, imprimez un message indiquant le taux de compression,
gain de place, temps de compression total (wall time) et vitesse moyenne de (dé)compression
(octets de données simples traités par seconde).
-S Imprimer les statistiques des variables de condition à l'erreur standard pour chaque terminé
opération de (dé)compression. Utile dans le profilage.
-q, --silencieux, --répétitive-rapide, --repetitive-meilleur, --exponentiel
Accepté pour compatibilité avec bzip2, sinon ignoré.
-h, --Aidez-moi
Imprimez l'aide sur l'utilisation de la ligne de commande sur la sortie standard et quittez avec succès.
-L, --Licence, -V, --version
Imprimez les informations de licence et de version sur la sortie standard et quittez avec succès.
ENVIRONNEMENT
LBZIP2, Bzip2, bzip
Avant d'analyser la ligne de commande, lbzip2 insère le contenu de ces variables, dans
l'ordre spécifié, entre le nom d'appel et le reste de la ligne de commande.
Les jetons sont séparés par des espaces et des tabulations, qui ne peuvent pas être échappés.
OPÉRANDES
DOSSIER Spécifiez les fichiers à compresser ou décompresser.
DOSSIERs avec . Bz2, .tbz, .tbz2 ainsi que .tz2 les suffixes de nom seront ignorés lorsque
compression. Lors de la décompression, . Bz2 les suffixes seront supprimés dans les noms de fichiers de sortie ;
.tbz, .tbz2 ainsi que .tz2 les suffixes seront remplacés par .le goudron; les autres noms de fichiers seront
suffixé par .en dehors. Si un INT or TERME le signal est délivré à lbzip2, puis il
supprime le fichier de sortie normal actuellement ouvert avant de quitter.
Si aucun FICHIER n'est fourni, lbzip2 fonctionne comme un filtre, traitant l'entrée standard vers
sortie standard. Dans ce cas, lbzip2 refusera d'écrire la sortie compressée sur un
terminal (ou lire l'entrée compressée d'un terminal), car cela serait entièrement
incompréhensible et donc inutile.
EXIT STATUT
0 if lbzip2 se termine avec succès. Cela suppose que chaque fois qu'il essaie, lbzip2 n'allons jamais
ne parvient pas à écrire dans l'erreur standard.
1 if lbzip2 rencontre une erreur fatale.
4 if lbzip2 émet des avertissements sans rencontrer d'erreur fatale. Cela suppose que
chaque fois qu'il essaie, lbzip2 ne manque jamais d'écrire dans l'erreur standard.
SIGPIPE, SIGXFSZ
if lbzip2 a l'intention de sortir avec le statut 1 en raison d'une erreur fatale, mais un tel signal
avec hérité SIG_DFL l'action a été générée pour lbzip2 auparavant, puis lbzip2
se termine au moyen de l'un desdits signaux, après avoir nettoyé toute sortie interrompue
fichier.
SIGABRT
si une assertion d'exécution échoue (c'est-à-dire lbzip2 détecte un bug en lui-même). Avec un peu de chance
celui qui a compilé votre binaire n'a pas été assez audacieux pour #define NDEBUG.
SIGINT, SIGTERME
lbzip2 capte ces signaux afin de pouvoir supprimer un fichier de sortie interrompu. Dans
de tels cas, lbzip2 sort en élevant (un des) signal(s) reçu(s).
BLOC TAILLE
lbzip2 compresse les gros fichiers en blocs. Il peut fonctionner à différentes tailles de blocs, allant
de 100k à 900k par pas de 100k, et il n'alloue que la mémoire nécessaire. Les
la taille du bloc affecte à la fois le taux de compression atteint et la quantité de mémoire nécessaire
à la fois pour la compression et la décompression. La vitesse de compression et de décompression est pratiquement
pas affecté par la taille du bloc, à condition que le fichier en cours de traitement soit suffisamment volumineux pour être
divisé entre tous les threads de travail.
Les drapeaux -1 à travers -9 spécifier la taille du bloc à 100,000 900,000 octets à XNUMX XNUMX octets
(la valeur par défaut) respectivement. Au moment de la décompression, la taille de bloc utilisée pour la compression est
lire à partir du fichier compressé -- les drapeaux -1 à -9 ne sont pas pertinents et donc ignorés
pendant la décompression.
Des blocs de plus grande taille donnent des rendements marginaux rapidement décroissants ; la plupart des compressions
vient des deux ou trois cents premiers k de la taille du bloc, un fait qu'il convient de garder à l'esprit
lors de l'utilisation lbzip2 sur de petites machines. Il est également important de comprendre que le
L'exigence de mémoire de décompression est définie au moment de la compression par le choix de la taille du bloc.
En général, vous devriez essayer d'utiliser la plus grande taille de bloc que les contraintes de mémoire permettent.
Un autre point important s'applique aux petits fichiers. Par conception, un seul des lbzip2l'ouvrier
les threads peuvent fonctionner sur un seul bloc. Cela signifie que si le nombre de blocs dans le
le fichier compressé est inférieur au nombre de processeurs en ligne, puis certains threads de travail
restera inactif pendant tout le temps. La compression de petits fichiers avec des tailles de blocs plus petites peut
donc augmenter considérablement la vitesse de compression et de décompression. La vitesse
la différence est plus notable à mesure que le nombre de cœurs de processeur augmente.
ERREUR MANIPULATION
La gestion des conditions d'erreur est l'aspect le moins satisfaisant de lbzip2. La politique est
pour essayer de laisser le système de fichiers dans un état cohérent, puis quittez, même si cela signifie que non
traiter certains des fichiers mentionnés dans la ligne de commande.
« Un état cohérent » signifie qu'un fichier existe dans son format compressé ou non compressé.
forme, mais pas les deux. Cela se résume à la règle "supprimer le fichier de sortie si une erreur
condition se produit, laissant l'entrée intacte ». Les fichiers d'entrée ne sont supprimés que lorsque nous pouvons être
à peu près sûr que le fichier de sortie a été écrit et fermé avec succès.
RESSOURCE ALLOCATION
lbzip2 a besoin de divers types de ressources système pour fonctionner. Ceux-ci incluent la mémoire, les threads,
mutex et variables de condition. La politique consiste simplement à abandonner si une allocation de ressources
l'échec se produit.
La consommation de ressources augmente linéairement avec le nombre de threads de travail. Si lbzip2 échoue parce que
du manque de certaines ressources, la diminution du nombre de threads de travail peut aider. Ce serait
possible pour lbzip2 pour essayer de réduire le nombre de threads de travail (et donc la ressource
consommation), ou de passer aux fichiers suivants dans l'espoir que certains auront besoin de moins
ressources, mais les complications liées à cette tâche semblent plus compliquées qu'elles n'en valent la peine.
ENDOMMAGÉ DES DOSSIERS
lbzip2 tente de compresser les données en effectuant plusieurs transformations non triviales dessus.
Chaque compression d'un fichier implique l'hypothèse que le fichier compressé peut être
décompressé pour reproduire l'original. De grands efforts dans la conception, le codage et les tests ont
été fait pour s'assurer que ce programme fonctionne correctement. Cependant, la complexité de la
algorithmes, et, en particulier, la présence de divers cas particuliers dans le code qui
se produisent avec une probabilité très faible mais non nulle, il est donc très difficile d'exclure la
possibilité de bugs restants dans le programme. Cela ne veut pas dire que ce programme est
intrinsèquement peu fiable. En effet, j'espère vraiment que le contraire est vrai -- lbzip2 a été
soigneusement construit et largement testé.
En guise d'autocontrôle pour votre protection, lbzip2 utilise des CRC 32 bits pour s'assurer que le
version décompressée d'un fichier est identique à l'original. Cela protège contre
corruption des données compressées, et contre les bogues non découverts dans lbzip2 (avec un peu de chance
improbable). Les chances que la corruption des données ne soit pas détectée sont microscopiques, environ un
chance sur quatre milliards pour chaque fichier traité. Sachez cependant que le contrôle se produit
lors de la décompression, il ne peut donc que vous dire que quelque chose ne va pas.
Les CRC ne peuvent détecter que les fichiers corrompus, ils ne peuvent pas vous aider à récupérer l'original,
données non compressées. Cependant, en raison de la nature par blocs de l'algorithme de compression, il
peut être possible de récupérer certaines parties du fichier endommagé, même si certains blocs sont
détruit.
Utilisez lbzip2 en ligne à l'aide des services onworks.net