AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

xzcat - En ligne dans le Cloud

Exécutez xzcat dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande xzcat qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de 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


xz, unxz, xzcat, lzma, unlzma, lzcat - Compresser ou décompresser les fichiers .xz et .lzma

SYNOPSIS


xz [option]... [filet] ...

unxz équivaut à xz --décompresser.
xzcat équivaut à xz --décompresser --stdout.
lzma équivaut à xz --format=lzma.
unlzma équivaut à xz --format=lzma --décompresser.
lzcat équivaut à xz --format=lzma --décompresser --stdout.

Lors de l'écriture de scripts qui doivent décompresser des fichiers, il est recommandé de toujours utiliser le
prénom xz avec des arguments appropriés (xz -d or xz -cc) au lieu des noms unxz ainsi que xzcat.

DESCRIPTION


xz est un outil de compression de données à usage général avec une syntaxe de ligne de commande similaire à gzip(1)
ainsi que bzip2(1). Le format de fichier natif est le .xz format, mais l'héritage .lzma format utilisé
par LZMA Utils et les flux compressés bruts sans en-tête de format de conteneur sont également
prise en charge.

xz compresse ou décompresse chacun filet selon le mode de fonctionnement sélectionné. Sinon
fichiers sont donnés ou filet is -, xz lit à partir de l'entrée standard et écrit les données traitées
à la sortie standard. xz refusera (affichera une erreur et sautera le filet) écrire
données compressées vers la sortie standard s'il s'agit d'un terminal. De la même manière, xz refusera de lire
données compressées à partir de l'entrée standard s'il s'agit d'un terminal.

Petite remarque, --stdout est spécifié, fichiers autre que - sont écrites dans un nouveau fichier dont le nom est
dérivé de la source filet nom:

· Lors de la compression, le suffixe du format de fichier cible (.xz or .lzma) est ajouté à
le nom de fichier source pour obtenir le nom de fichier cible.

· Lors de la décompression, le .xz or .lzma le suffixe est supprimé du nom de fichier pour obtenir le
nom de fichier cible. xz reconnaît également les suffixes .txz ainsi que .tlz, et les remplace par
le .le goudron suffixe.

Si le fichier cible existe déjà, une erreur s'affiche et le filet est ignoré.

À moins d'écrire sur la sortie standard, xz affichera un avertissement et sautera le filet si l'un des
ce qui suit s'applique :

· Déposez votre dernière attestation n'est pas un fichier ordinaire. Les liens symboliques ne sont pas suivis, et donc ils ne sont pas
considérés comme des fichiers réguliers.

· Déposez votre dernière attestation a plus d'un lien dur.

· Déposez votre dernière attestation a setuid, setgid ou sticky bit défini.

· Le mode de fonctionnement est réglé sur compresser et le filet a déjà un suffixe de la cible
format de fichier (.xz or .txz lors de la compression à la .xz format, et .lzma or .tlz quand
compression à la .lzma format).

· Le mode de fonctionnement est réglé pour décompresser et le filet n'a pas le suffixe de l'un des
les formats de fichiers pris en charge (.xz, .txz, .lzmaou .tlz).

Après avoir compressé ou décompressé avec succès le filet, xz copie le propriétaire, le groupe,
autorisations, heure d'accès et heure de modification de la source filet au fichier cible.
Si la copie du groupe échoue, les autorisations sont modifiées afin que le fichier cible ne
devenir accessible aux utilisateurs qui n'avaient pas la permission d'accéder à la source filet. xz
ne prend pas en charge la copie d'autres métadonnées comme les listes de contrôle d'accès ou les attributs étendus
encore.

Une fois le fichier cible fermé avec succès, la source filet est supprimé à moins que
--garder a été précisé. La source filet n'est jamais supprimé si la sortie est écrite dans
sortie standard.

Envoi SIGINFO or SIGUSR1 à la xz le processus lui permet d'imprimer les informations de progression sur
erreur standard. Cela n'a qu'une utilité limitée car lorsque l'erreur standard est un terminal, en utilisant
--verbeux affichera un indicateur de progression à mise à jour automatique.

Mémoire usage
L'utilisation de la mémoire de xz varie de quelques centaines de kilooctets à plusieurs gigaoctets selon
sur les paramètres de compression. Les paramètres utilisés lors de la compression d'un fichier déterminent le
besoins en mémoire du décompresseur. Typiquement, le décompresseur a besoin de 5 % à 20 % de
la quantité de mémoire dont le compresseur avait besoin lors de la création du fichier. Par exemple,
décompresser un fichier créé avec xz -9 nécessite actuellement 65 Mio de mémoire. C'est quand même
possible d'avoir .xz fichiers qui nécessitent plusieurs gigaoctets de mémoire pour être décompressés.

En particulier, les utilisateurs de systèmes plus anciens peuvent trouver la possibilité d'une très grande utilisation de la mémoire
énervant. Pour éviter les mauvaises surprises, xz dispose d'un limiteur d'utilisation de la mémoire intégré,
qui est désactivé par défaut. Bien que certains systèmes d'exploitation offrent des moyens de limiter le
l'utilisation de la mémoire des processus, s'appuyer dessus n'a pas été jugé assez flexible (par exemple, en utilisant
ulimit(1) pour limiter la mémoire virtuelle a tendance à paralyser mmap(2)).

Le limiteur d'utilisation de la mémoire peut être activé avec l'option de ligne de commande --memlimit=limite.
Il est souvent plus pratique d'activer le limiteur par défaut en définissant l'environnement
variable XZ_DEFAUTS, par exemple XZ_DEFAULTS=--memlimit=150Mio. Il est possible de régler le
limites séparément pour la compression et la décompression en utilisant --memlimit-compress=limite ainsi que
--memlimit-decompress=limite. En utilisant ces deux options à l'extérieur XZ_DEFAUTS est rarement utile
parce qu'une seule série de xz ne peut pas faire à la fois la compression et la décompression et
--memlimit=limite (ou -M limite) est plus court à saisir sur la ligne de commande.

Si la limite d'utilisation de la mémoire spécifiée est dépassée lors de la décompression, xz affichera un
erreur et la décompression du fichier échouera. Si la limite est dépassée lors de la compression, xz
essaiera de réduire les paramètres afin que la limite ne soit plus dépassée (sauf lorsque
en utilisant --format=brut or --pas de réglage). De cette façon, l'opération n'échouera que si la limite est
très petit. La mise à l'échelle des paramètres se fait par étapes qui ne correspondent pas à la compression
préréglages de niveau, par exemple si la limite n'est que légèrement inférieure à la quantité requise pour xz -9,
les paramètres ne seront réduits que légèrement, pas complètement xz -8.

Enchaînement ainsi que rembourrage avec .xz fichiers
Il est possible de concaténer .xz fichiers tels quels. xz décompressera ces fichiers comme s'ils
étaient célibataires .xz fichier.

Il est possible d'insérer un rembourrage entre les parties concaténées ou après la dernière partie.
Le remplissage doit être constitué d'octets nuls et la taille du remplissage doit être un multiple de
quatre octets. Cela peut être utile, par exemple si le .xz fichier est stocké sur un support qui mesure
tailles de fichier en blocs de 512 octets.

La concaténation et le remplissage ne sont pas autorisés avec .lzma fichiers ou flux bruts.

OPTIONS


Entier suffixes ainsi que spécial valeurs
Dans la plupart des endroits où un argument entier est attendu, un suffixe facultatif est pris en charge pour
indiquer facilement de grands nombres entiers. Il ne doit pas y avoir d'espace entre l'entier et le
suffixe.

Kio Multipliez l'entier par 1,024 2 (10^XNUMX). Ki, k, kB, Ket KB sont acceptés comme
synonymes de Kio.

Mio Multipliez l'entier par 1,048,576 2 (20^XNUMX). Mi, m, Met MB sont acceptés comme
synonymes de Mio.

Gio Multipliez l'entier par 1,073,741,824 2 (30^XNUMX). Gi, g, Get GB sont acceptés comme
synonymes de Gio.

La valeur spéciale max peut être utilisé pour indiquer la valeur entière maximale prise en charge par le
option.

Opération mode
Si plusieurs options de mode de fonctionnement sont données, la dernière prend effet.

-z, --compresse
Compresse. Il s'agit du mode de fonctionnement par défaut lorsqu'aucune option de mode de fonctionnement n'est
spécifié et aucun autre mode de fonctionnement n'est impliqué à partir du nom de la commande (pour
Par exemple, unxz implique --décompresser).

-d, --décompresser, --décompresser
Décompresser.

-t, --test
Tester l'intégrité de la compression fichiers. Cette option équivaut à --décompresser
--stdout sauf que les données décompressées sont supprimées au lieu d'être écrites dans
sortie standard. Aucun fichier n'est créé ou supprimé.

-l, --liste
Imprimer des informations sur la compression fichiers. Aucune sortie non compressée n'est produite, et
aucun fichier n'est créé ou supprimé. En mode liste, le programme ne peut pas lire le
données compressées à partir d'une entrée standard ou d'autres sources introuvables.

La liste par défaut affiche des informations de base sur fichiers, un fichier par ligne. Obtenir
informations plus détaillées, utilisez également le --verbeux option. Pour encore plus
informations, utiliser --verbeux deux fois, mais notez que cela peut être lent, car obtenir
toutes les informations supplémentaires nécessitent de nombreuses recherches. La largeur de la sortie détaillée dépasse
80 caractères, donc redirigeant la sortie vers, par exemple moins -S peut être pratique si le
le terminal n'est pas assez large.

La sortie exacte peut varier entre xz versions et différents paramètres régionaux. Pour machine-
sortie lisible, --robot --liste Devrait être utilisé.

Opération modificateurs
-k, --garder
Ne supprimez pas les fichiers d'entrée.

-f, --Obliger
Cette option a plusieurs effets :

· Si le fichier cible existe déjà, supprimez-le avant de le compresser ou
décompresser.

· Compresser ou décompresser même si l'entrée est un lien symbolique vers un fichier normal,
a plus d'un lien physique, ou a le setuid, setgid ou le bit sticky défini. Les
setuid, setgid et sticky bits ne sont pas copiés dans le fichier cible.

· Lorsqu'il est utilisé avec --décompresser --stdout ainsi que xz ne peut pas reconnaître le type de
source, copiez le fichier source tel quel sur la sortie standard. Ceci permet xzcat
--Obliger à utiliser comme cat(1) pour les fichiers qui n'ont pas été compressés avec xz.
Notez qu'à l'avenir, xz peut prendre en charge de nouveaux formats de fichiers compressés, qui peuvent
faire xz décompresser plus de types de fichiers au lieu de les copier tels quels à la norme
sortie. --format=le format peut être utilisé pour restreindre xz décompresser un seul
format de fichier.

-c, --stdout, --vers la sortie standard
Écrivez les données compressées ou décompressées sur la sortie standard au lieu d'un fichier.
Cela implique --garder.

--flux unique
Décompresser uniquement le premier .xz flux, et ignorer silencieusement l'entrée restante possible
données suivant le flux. Normalement, de telles ordures xz afficher un
Erreur.

xz ne décompresse jamais plus d'un flux de .lzma fichiers ou flux bruts, mais
cette option fait toujours xz ignorer les éventuelles données de fin après le .lzma filet
ou flux brut.

Cette option n'a aucun effet si le mode de fonctionnement n'est pas --décompresser or --test.

--pas de parcage
Désactivez la création de fichiers fragmentés. Par défaut, si vous décompressez en un
fichier, xz essaie de rendre le fichier clairsemé si les données décompressées contiennent de longs
séquences de zéros binaires. Cela fonctionne également lors de l'écriture sur la sortie standard tant que
comme sortie standard est connecté à un fichier régulier et certaines conditions supplémentaires
sont réunis pour le rendre sûr. La création de fichiers épars peut économiser de l'espace disque et accélérer
la décompression en réduisant la quantité d'E/S disque.

-S .suf, --suffixe=.suf
Lors de la compression, utilisez .suf comme suffixe pour le fichier cible au lieu de .xz or
.lzma. Si vous n'écrivez pas sur la sortie standard et que le fichier source a déjà le
suffixe .suf, un avertissement s'affiche et le fichier est ignoré.

Lors de la décompression, reconnaître les fichiers avec le suffixe .suf en plus des fichiers avec
le .xz, .txz, .lzmaou .tlz suffixe. Si le fichier source a le suffixe .suf,
suffixe est supprimé pour obtenir le nom de fichier cible.

Lors de la compression ou de la décompression de flux bruts (--format=brut), le suffixe doit
toujours être spécifié à moins d'écrire sur la sortie standard, car il n'y a pas de valeur par défaut
suffixe pour les flux bruts.

--des dossiers[=filet]
Lire les noms de fichiers à traiter depuis filet; si filet est omis, les noms de fichiers sont lus
à partir de l'entrée standard. Les noms de fichiers doivent se terminer par le caractère de nouvelle ligne. UNE
tiret (-) est considéré comme un nom de fichier normal ; cela ne signifie pas une entrée standard. Si
les noms de fichiers sont également donnés comme arguments de ligne de commande, ils sont traités avant le
noms de fichiers lus depuis filet.

--files0[=filet]
Ceci est identique à --des dossiers[=filet] sauf que chaque nom de fichier doit être terminé
avec le caractère nul.

Basic filet le format ainsi que compression Options
-F le format, --format=le format
Spécifiez le fichier le format pour compresser ou décompresser :

auto C'est la valeur par défaut. Lors de la compression, auto équivaut à xz. Quand
décompression, le format du fichier d'entrée est automatiquement détecté. Noter
que les flux bruts (créés avec --format=brut) ne peut pas être détecté automatiquement.

xz Compresser au .xz format de fichier, ou accepter uniquement .xz fichiers lorsque
décompresser.

lzma, seul
Compresser vers l'héritage .lzma format de fichier, ou accepter uniquement .lzma fichiers lorsque
décompresser. Le nom alternatif seul est prévu à l'envers
compatibilité avec LZMA Utils.

brut Compresser ou décompresser un flux brut (pas d'en-têtes). Ceci est destiné à
utilisateurs avancés uniquement. Pour décoder les flux bruts, vous devez utiliser --format=brut ainsi que
spécifier explicitement la chaîne de filtrage, qui aurait normalement été stockée
dans les en-têtes des conteneurs.

-C vérifier, --vérifier=vérifier
Spécifiez le type de contrôle d'intégrité. Le chèque est calculé à partir du
données non compressées et stockées dans le .xz déposer. Cette option n'a d'effet que lorsque
compresser dans le .xz format; les .lzma le format ne prend pas en charge les contrôles d'intégrité.
Le contrôle d'intégrité (le cas échéant) est vérifié lorsque le .xz le fichier est décompressé.

Appareils vérifier les types:

aucun Ne calculez pas du tout un contrôle d'intégrité. C'est généralement une mauvaise idée.
Cela peut être utile lorsque l'intégrité des données est vérifiée par d'autres moyens
de toute façon.

crc32 Calculez CRC32 en utilisant le polynôme de IEEE-802.3 (Ethernet).

crc64 Calculer CRC64 en utilisant le polynôme de ECMA-182. C'est la valeur par défaut,
car il est légèrement meilleur que CRC32 pour détecter les fichiers endommagés et le
la différence de vitesse est négligeable.

sha256 Calculez SHA-256. C'est un peu plus lent que CRC32 et CRC64.

Intégrité du .xz en-têtes est toujours vérifié avec CRC32. Il n'est pas possible de
le modifier ou le désactiver.

-0 -9
Sélectionnez un niveau de compression prédéfini. La valeur par défaut est -6. Si plusieurs niveaux prédéfinis
sont spécifiés, le dernier prend effet. Si une chaîne de filtrage personnalisée était déjà
spécifié, la définition d'un niveau de compression prédéfini efface la chaîne de filtres personnalisée.

Les différences entre les préréglages sont plus importantes qu'avec gzipde Géographie (1) et avec la
bzip2(1). Les paramètres de compression sélectionnés déterminent les besoins en mémoire de
le décompresseur, donc l'utilisation d'un niveau de préréglage trop élevé peut rendre pénible
décompressez le fichier sur un ancien système avec peu de RAM. Spécifiquement, c'est ne sauraient a
Bien idée à aveuglément utilisé -9 en peut comme c'est souvent le cas avec gzipde Géographie (1) et avec la
bzip2 (1).

-0 -3
Ce sont des préréglages assez rapides. -0 est parfois plus rapide que gzip -9 tout en
compresser beaucoup mieux. Les plus élevés ont souvent une vitesse comparable à
bzip2(1) avec un taux de compression comparable ou meilleur, bien que les résultats
dépendent beaucoup du type de données compressées.

-4 -6
Bonne à très bonne compression tout en conservant l'utilisation de la mémoire du décompresseur
raisonnable même pour les anciens systèmes. -6 est la valeur par défaut, ce qui est généralement un bon
choix par exemple pour distribuer des fichiers qui doivent être décompressibles même sur
systèmes avec seulement 16 Mio de RAM. (-5e or -6e ça vaut peut-être le coup d'y penser aussi.
See --extrême.)

-7 -9
Ce sont comme -6 mais avec une mémoire de compresseur et de décompresseur plus élevée
conditions. Ceux-ci ne sont utiles que lors de la compression de fichiers plus gros que
8 Mio, 16 Mio et 32 Mio, respectivement.

Sur le même matériel, la vitesse de décompression est approximativement un nombre constant de
octets de données compressées par seconde. En d'autres termes, meilleure est la compression,
plus la décompression sera généralement rapide. Cela signifie également que le montant de
la sortie non compressée produite par seconde peut varier considérablement.

Le tableau suivant résume les caractéristiques des préréglages :

Préréglage DictSize CompCPU CompMem DecMem
-0 256 KiB 0 3 Mio 1 Mio
-1 1 Mio 1 9 Mio 2 Mio
-2 2 Mio 2 17 Mio 3 Mio
-3 4 Mio 3 32 Mio 5 Mio
-4 4 Mio 4 48 Mio 5 Mio
-5 8 Mio 5 94 Mio 9 Mio
-6 8 Mio 6 94 Mio 9 Mio
-7 16 Mio 6 186 Mio 17 Mio
-8 32 Mio 6 370 Mio 33 Mio
-9 64 Mio 6 674 Mio 65 Mio

Description des colonnes :

· DictSize est la taille du dictionnaire LZMA2. C'est une perte de mémoire d'utiliser un
dictionnaire plus grand que la taille du fichier non compressé. C'est pourquoi il est
bon pour éviter d'utiliser les préréglages -7 -9 quand il n'y a pas vraiment besoin d'eux.
At -6 et inférieur, la quantité de mémoire gaspillée est généralement suffisamment faible pour ne pas
matière.

· CompCPU est une représentation simplifiée des paramètres LZMA2 qui affectent
vitesse de compression. La taille du dictionnaire affecte également la vitesse, alors même si CompCPU est
idem pour les niveaux -6 -9, les niveaux plus élevés ont toujours tendance à être un peu plus lents.
Pour obtenir une compression encore plus lente et donc éventuellement meilleure, voir --extrême.

· CompMem contient les exigences de mémoire du compresseur en mode monothread.
Il peut varier légèrement entre xz versions. Les besoins en mémoire de certains des
les futurs modes multithreads pourraient être considérablement plus élevés que celui du single-
mode fileté.

· DecMem contient les exigences de mémoire du décompresseur. c'est-à-dire la compression
les paramètres déterminent les besoins en mémoire du décompresseur. L'exact
l'utilisation de la mémoire du décompresseur est légèrement supérieure à la taille du dictionnaire LZMA2, mais
les valeurs du tableau ont été arrondies au prochain MiB complet.

-e, --extrême
Utilisez une variante plus lente du niveau de préréglage de compression sélectionné (-0 -9) À
j'espère obtenir un meilleur taux de compression, mais avec de la malchance, cela peut
aggraver aussi les choses. L'utilisation de la mémoire du décompresseur n'est pas affectée, mais le compresseur
l'utilisation de la mémoire augmente un peu aux niveaux prédéfinis -0 -3.

Puisqu'il existe deux préréglages avec des tailles de dictionnaire de 4 MiB et 8 MiB, les préréglages -3e
ainsi que -5e utiliser des paramètres légèrement plus rapides (compCPU inférieur) que -4e ainsi que -6e,
respectivement. De cette façon, il n'y a pas deux préréglages identiques.

Préréglage DictSize CompCPU CompMem DecMem
-0e 256 KiB 8 4 Mio 1 Mio
-1e 1 Mio 8 13 Mio 2 Mio
-2e 2 Mio 8 25 Mio 3 Mio
-3e 4 Mio 7 48 Mio 5 Mio
-4e 4 Mio 8 48 Mio 5 Mio
-5e 8 Mio 7 94 Mio 9 Mio
-6e 8 Mio 8 94 Mio 9 Mio
-7e 16 Mio 8 186 Mio 17 Mio
-8e 32 Mio 8 370 Mio 33 Mio
-9e 64 Mio 8 674 Mio 65 Mio

Par exemple, il y a un total de quatre préréglages qui utilisent un dictionnaire de 8 Mio, dont
l'ordre du plus rapide au plus lent est -5, -6, -5eet -6e.

--vite
--meilleur Ce sont des alias quelque peu trompeurs pour -0 ainsi que -9, respectivement. Ceux-ci sont
fourni uniquement pour une compatibilité descendante avec LZMA Utils. Évitez d'utiliser ces
options.

--block-size=taille
Lors de la compression au .xz format, diviser les données d'entrée en blocs de taille octets.
Les blocs sont compressés indépendamment les uns des autres.

--memlimit-compress=limite
Définissez une limite d'utilisation de la mémoire pour la compression. Si cette option est spécifiée plusieurs
fois, la dernière prend effet.

Si les paramètres de compression dépassent le limite, xz ajustera les paramètres vers le bas
afin que la limite ne soit plus dépassée et afficher un avis indiquant automatiquement
le réglage a été fait. De tels ajustements ne sont pas effectués lors de la compression avec
--format=brut ou si --pas de réglage a été précisé. Dans ces cas, une erreur est
affiché et xz sortira avec l'état de sortie 1.

La limite peut être spécifié de plusieurs manières :

· Le limite peut être une valeur absolue en octets. En utilisant un suffixe entier comme Mio
peut être utile. Exemple: --memlimit-compress=80Mio

· Le limite peut être spécifié en pourcentage de la mémoire physique totale (RAM). Cette
peut être utile en particulier lors du réglage de la XZ_DEFAUTS variable d'environnement dans un
script d'initialisation du shell qui est partagé entre différents ordinateurs. Cette
la limite est automatiquement plus grande sur les systèmes avec plus de mémoire. Exemple:
--memlimit-compress=70%

· Le limite peut être réinitialisé à sa valeur par défaut en le réglant sur 0. C'est
équivaut actuellement à régler le limite à max (pas de limite d'utilisation de la mémoire). Une fois que
la prise en charge du multithreading a été implémentée, il peut y avoir une différence entre 0
ainsi que max pour le cas multithread, il est donc recommandé d'utiliser 0 au lieu de max
jusqu'à ce que les détails soient décidés.

Voir aussi la rubrique Mémoire usage.

--memlimit-decompress=limite
Définissez une limite d'utilisation de la mémoire pour la décompression. Cela affecte également la --liste mode. Si
l'opération n'est pas possible sans dépasser le limite, xz affichera une erreur
et la décompression du fichier échouera. Voir --memlimit-compress=limite pour possible
façons de spécifier le limite.

-M limite, --memlimit=limite, --mémoire=limite
Cela équivaut à spécifier --memlimit-compress=limite
--memlimit-decompress=limite.

--pas de réglage
Afficher une erreur et quitter si les paramètres de compression dépassent l'utilisation de la mémoire
limite. La valeur par défaut consiste à ajuster les paramètres vers le bas afin que l'utilisation de la mémoire
la limite n'est pas dépassée. Le réglage automatique est toujours désactivé lors de la création de raw
ruisseaux (--format=brut).

-T discussions, --threads=discussions
Spécifiez le nombre de threads de travail à utiliser. Le nombre réel de threads peut être
moins que discussions si l'utilisation de plus de threads dépasserait la limite d'utilisation de la mémoire.

Multithread compression ainsi que décompression ne sauraient mis en œuvre cependant, so this option
a aucune effet en maintenant.

As of écriture (2010-09-27), it n'a pas était décidé if discussions sera be d'utiliser by
défaut on multicœur les systèmes une fois Support en filetage a était mis en œuvre.
Commentaires Bienvenue. Le facteur de complication est que l'utilisation de nombreux threads
augmenter considérablement l'utilisation de la mémoire. Notez que si le multithreading sera le
par défaut, cela sera probablement fait pour que les modes monothread et multithread
produisent la même sortie, donc le taux de compression ne sera pas significativement affecté si
le threading sera activé par défaut.

Coutume compresseur une fonction filtre Chaînes
Une chaîne de filtrage personnalisée permet de spécifier les paramètres de compression en détail au lieu de
en s'appuyant sur les paramètres associés aux niveaux prédéfinis. Lorsqu'une chaîne de filtrage personnalisée est
spécifié, les options de niveau de compression prédéfini (-0 -9 ainsi que --extrême) sont silencieusement
ignoré.

Une chaîne de filtrage est comparable à une tuyauterie sur la ligne de commande. Lors de la compression, le
l'entrée non compressée va au premier filtre, dont la sortie va au filtre suivant (si
tout). La sortie du dernier filtre est écrite dans le fichier compressé. Le maximum
le nombre de filtres dans la chaîne est de quatre, mais généralement une chaîne de filtres n'en a qu'un ou deux
filtres

De nombreux filtres ont des limites quant à leur position dans la chaîne de filtrage : certains filtres peuvent
fonctionnent uniquement comme le dernier filtre de la chaîne, certains uniquement comme un non-dernier filtre, et certains fonctionnent
dans n'importe quelle position de la chaîne. Selon le filtre, cette limitation est soit inhérente
à la conception du filtre ou existe pour éviter les problèmes de sécurité.

Une chaîne de filtres personnalisée est spécifiée en utilisant une ou plusieurs options de filtre dans l'ordre dans lequel elles
sont recherchés dans la chaîne de filtrage. C'est-à-dire que l'ordre des options de filtrage est important !
Lors du décodage de flux bruts (--format=brut), la chaîne de filtrage est spécifiée dans le même ordre
comme il a été spécifié lors de la compression.

Les filtres prennent des filtres spécifiques Options sous forme de liste séparée par des virgules. virgules supplémentaires dans Options
sont ignorés. Chaque option a une valeur par défaut, vous devez donc spécifier uniquement celles que vous voulez
à changer.

--lzma1[=Options]
--lzma2[=Options]
Ajoutez le filtre LZMA1 ou LZMA2 à la chaîne de filtres. Ces filtres ne peuvent être utilisés que comme
le dernier filtre de la chaîne.

LZMA1 est un filtre hérité, qui est pris en charge presque uniquement en raison de l'héritage .lzma
format de fichier, qui ne prend en charge que LZMA1. LZMA2 est une version mise à jour de LZMA1 pour
résoudre quelques problèmes pratiques de LZMA1. Les .xz le format utilise LZMA2 et ne prend pas en charge
LZMA1 du tout. La vitesse de compression et les rapports de LZMA1 et LZMA2 sont pratiquement les
même.

LZMA1 et LZMA2 partagent le même ensemble de Options:

prédéfini=préréglé
Réinitialiser tous les LZMA1 ou LZMA2 Options à préréglé. Preset consister en un entier,
qui peut être suivi de modificateurs prédéfinis d'une seule lettre. L'entier peut être
de 0 à 9, correspondant aux options de la ligne de commande -0 -9. Le seul
le modificateur pris en charge est actuellement e, qui correspond --extrême. Le défaut
préréglé is 6, d'où les valeurs par défaut pour le reste du LZMA1 ou
LZMA2 Options sont pris.

dict =taille
Dictionnaire (tampon historique) taille indique combien d'octets de la dernière
les données non compressées traitées sont conservées en mémoire. L'algorithme essaie de trouver
répéter des séquences d'octets (correspondances) dans les données non compressées, et remplacer
avec des références aux données actuellement dans le dictionnaire. Le plus gros
le dictionnaire, plus vous avez de chances de trouver une correspondance. Ainsi, en augmentant
dictionnaire taille améliore généralement le taux de compression, mais un dictionnaire plus gros
que le fichier non compressé est un gaspillage de mémoire.

Dictionnaire typique taille est de 64 Kio à 64 Mio. Le minimum est de 4 Kio.
Le maximum de compression est actuellement de 1.5 Gio (1536 MiB). Les
décompresseur prend déjà en charge les dictionnaires jusqu'à un octet de moins de 4 Gio,
qui est le maximum pour les formats de flux LZMA1 et LZMA2.

Dictionnaire taille et recherche de correspondance (mf) déterminent ensemble l'utilisation de la mémoire de
l'encodeur LZMA1 ou LZMA2. Le même (ou plus grand) dictionnaire taille is
requis pour la décompression qui a été utilisé lors de la compression, ainsi la mémoire
l'utilisation du décodeur est déterminée par la taille du dictionnaire utilisé lorsque
compression. Les .xz les en-têtes stockent le dictionnaire taille soit comme 2^n ou 2^n
+ 2^(n-1), donc ces tailles sont quelque peu préférés pour la compression. Autre
tailles sera arrondi lorsqu'il sera stocké dans le .xz En-têtes.

lc=lc Spécifiez le nombre de bits de contexte littéral. Le minimum est 0 et le
le maximum est de 4 ; la valeur par défaut est 3. De plus, la somme de lc ainsi que lp ne doit pas
dépasser 4.

Tous les octets qui ne peuvent pas être encodés en tant que correspondances sont encodés en tant que littéraux. Cette
c'est-à-dire que les littéraux sont simplement des octets de 8 bits qui sont codés un par un.

Le codage littéral suppose que la plus haute lc morceaux du
l'octet non compressé précédent est en corrélation avec l'octet suivant. Par exemple en typique
Texte anglais, une lettre majuscule est souvent suivie d'une lettre minuscule,
et une lettre minuscule est généralement suivie d'une autre lettre minuscule.
Dans le jeu de caractères US-ASCII, les trois bits les plus élevés sont 010 pour les majuscules
lettres et 011 pour les lettres minuscules. Lorsque lc est au moins 3, le littéral
le codage peut tirer parti de cette propriété dans les données non compressées.

La valeur par défaut (3) est généralement bonne. Si vous voulez une compression maximale,
tester LC=4. Parfois ça aide un peu, et parfois ça fait de la compression
pire. Si cela l'aggrave, testez par exemple LC=2 trop.

lp=lp Spécifiez le nombre de bits de position littérale. Le minimum est 0 et le
le maximum est de 4 ; la valeur par défaut est 0.

Lp affecte quel type d'alignement dans les données non compressées est supposé lorsque
littéraux d'encodage. Voir pb ci-dessous pour plus d'informations sur l'alignement.

pb=pb Spécifiez le nombre de bits de position. Le minimum est 0 et le maximum est 4 ;
la valeur par défaut est 2.

Pb affecte quel type d'alignement dans les données non compressées est supposé dans
général. La valeur par défaut signifie un alignement sur quatre octets (2^pb=2^2=4), ce qui est souvent
un bon choix quand il n'y a pas de meilleure estimation.

Lorsque l'alignement est connu, le réglage pb en conséquence peut réduire la taille du fichier
un peu. Par exemple, avec des fichiers texte ayant un alignement sur un octet (US-ASCII,
ISO-8859-*, UTF-8), réglage pb=0 peut améliorer légèrement la compression. Pour
texte UTF-16, pb=1 est un bon choix. Si l'alignement est un nombre impair comme
3 octets, pb=0 pourrait être le meilleur choix.

Même si l'alignement supposé peut être ajusté avec pb ainsi que lp, LZMA1 et
LZMA2 favorise encore légèrement l'alignement sur 16 octets. Cela vaut peut-être la peine de prendre en
compte lors de la conception de formats de fichiers susceptibles d'être souvent compressés
avec LZMA1 ou LZMA2.

mf=mf Match Finder a un effet majeur sur la vitesse de l'encodeur, l'utilisation de la mémoire et
ratio de compression. Habituellement, les chercheurs de correspondance Hash Chain sont plus rapides que Binary
Chercheurs de correspondance d'arbres. La valeur par défaut dépend de la préréglé: 0 utilisations hc3, 1 à 3 utilisations
hc4, et le reste utilise bt4.

Les outils de recherche de correspondance suivants sont pris en charge. Les formules d'utilisation de la mémoire ci-dessous
sont des approximations grossières, qui sont les plus proches de la réalité lorsque dicter est une
puissance de deux.

hc3 Chaîne de hachage avec hachage de 2 et 3 octets
Valeur minimale pour agréable: 3
Utilisation de la mémoire:
dicter * 7.5 (si dicter <= 16 Mio);
dicter * 5.5 + 64 Mio (si dicter > 16 Mio)

hc4 Chaîne de hachage avec hachage à 2, 3 et 4 octets
Valeur minimale pour agréable: 4
Utilisation de la mémoire:
dicter * 7.5 (si dicter <= 32 Mio);
dicter * 6.5 (si dicter > 32 Mio)

bt2 Arbre binaire avec hachage de 2 octets
Valeur minimale pour agréable: 2
Utilisation de la mémoire: dicter * 9.5

bt3 Arbre binaire avec hachage à 2 et 3 octets
Valeur minimale pour agréable: 3
Utilisation de la mémoire:
dicter * 11.5 (si dicter <= 16 Mio);
dicter * 9.5 + 64 Mio (si dicter > 16 Mio)

bt4 Arbre binaire avec hachage à 2, 3 et 4 octets
Valeur minimale pour agréable: 4
Utilisation de la mémoire:
dicter * 11.5 (si dicter <= 32 Mio);
dicter * 10.5 (si dicter > 32 Mio)

mode=mode
Compression mode spécifie la méthode d'analyse des données produites par le
chercheur de correspondance. Prise en charge modes vite ainsi que Ordinaire. La valeur par défaut est vite en
préréglages 0-3 et Ordinaire en préréglages 4-9.

Habituellement vite est utilisé avec les détecteurs de correspondance Hash Chain et Ordinaire avec binaire
Chercheurs de correspondance d'arbres. C'est aussi ce que le préréglages faire.

sympa =agréable
Spécifiez ce qui est considéré comme une belle longueur pour un match. Une fois un match de
au moins agréable octets est trouvé, l'algorithme arrête de rechercher éventuellement
meilleurs matchs.

Nice peut être de 2 à 273 octets. Des valeurs plus élevées ont tendance à donner une meilleure compression
rapport au détriment de la vitesse. La valeur par défaut dépend de la préréglé.

profondeur=profondeur
Spécifiez la profondeur de recherche maximale dans le moteur de recherche de correspondance. La valeur par défaut est le
valeur spéciale de 0, ce qui oblige le compresseur à déterminer un profondeur
de mf ainsi que agréable.

Raisonnable profondeur pour les chaînes de hachage est de 4-100 et de 16-1000 pour les arbres binaires.
En utilisant des valeurs très élevées pour profondeur peut rendre l'encodeur extrêmement lent avec
certains fichiers. Evitez de régler le profondeur plus de 1000 sauf si vous êtes prêt à
interrompez la compression au cas où elle prendrait beaucoup trop de temps.

Lors du décodage de flux bruts (--format=brut), LZMA2 n'a besoin que du dictionnaire taille.
LZMA1 a également besoin lc, lpet pb.

--x86[=Options]
--powerpc[=Options]
--ia64[=Options]
--bras[=Options]
--bras[=Options]
--sparc[=Options]
Ajoutez un filtre de branchement/appel/saut (BCJ) à la chaîne de filtrage. Ces filtres peuvent être utilisés
uniquement en tant que non-dernier filtre dans la chaîne de filtrage.

Un filtre BCJ convertit les adresses relatives dans le code machine en leur valeur absolue
homologues. Cela ne change pas la taille des données, mais cela augmente
redondance, qui peut aider LZMA2 à produire 0-15 % plus petit .xz déposer. Le BCJ
les filtres sont toujours réversibles, donc l'utilisation d'un filtre BCJ pour le mauvais type de données ne
entraîner une perte de données, bien que cela puisse légèrement aggraver le taux de compression.

C'est bien d'appliquer un filtre BCJ sur un exécutable entier ; il n'y a pas besoin de l'appliquer
uniquement sur la section exécutable. Appliquer un filtre BCJ sur une archive qui contient
les fichiers exécutables et non exécutables peuvent ou non donner de bons résultats, il
n'est généralement pas bon d'appliquer aveuglément un filtre BCJ lors de la compression de packages binaires
pour la distribution.

Ces filtres BCJ sont très rapides et utilisent une quantité de mémoire insignifiante. Si un BCJ
le filtre améliore le taux de compression d'un fichier, il peut améliorer la vitesse de décompression à
le même temps. En effet, sur le même matériel, la vitesse de décompression de
LZMA2 est à peu près un nombre fixe d'octets de données compressées par seconde.

Ces filtres BCJ ont des problèmes connus liés au taux de compression :

· Certains types de fichiers contenant du code exécutable (par exemple des fichiers objets,
bibliothèques et modules du noyau Linux) ont les adresses dans les instructions
rempli de valeurs de remplissage. Ces filtres BCJ feront toujours l'adresse
conversion, ce qui aggravera la compression avec ces fichiers.

· L'application d'un filtre BCJ sur une archive contenant plusieurs exécutables similaires peut
rendre le taux de compression pire que de ne pas utiliser un filtre BCJ. Ceci est dû au fait
le filtre BCJ ne détecte pas les limites des fichiers exécutables, et
ne réinitialise pas le compteur de conversion d'adresse pour chaque exécutable.

Les deux problèmes ci-dessus seront résolus à l'avenir dans un nouveau filtre. L'ancien
Les filtres BCJ seront toujours utiles dans les systèmes embarqués, car le décodeur du
le nouveau filtre sera plus gros et utilisera plus de mémoire.

Différents jeux d'instructions ont un alignement différent :

Remarques sur l'alignement des filtres
x86 1 32 bits ou 64 bits x86
PowerPC 4 Big-endian uniquement
ARM 4 Little Endian uniquement
ARM-Tumb 2 Little Endian uniquement
IA-64 16 Gros ou petit boutiste
SPARC 4 Big ou little endian

Étant donné que les données filtrées BCJ sont généralement compressées avec LZMA2, le taux de compression
peut être légèrement amélioré si les options LZMA2 sont définies pour correspondre à l'alignement du
filtre BCJ sélectionné. Par exemple, avec le filtre IA-64, il est bon de régler pb=4
avec LZMA2 (2^4=16). Le filtre x86 est une exception ; il est généralement bon de s'en tenir à
Alignement de quatre octets par défaut de LZMA2 lors de la compression des exécutables x86.

Tous les filtres BCJ prennent en charge le même Options:

début =compenser
Précisez le début compenser qui est utilisé lors de la conversion entre relatif et
adresses absolues. Les compenser doit être un multiple de l'alignement du
filtre (voir le tableau ci-dessus). La valeur par défaut est zéro. En pratique, le
la valeur par défaut est bonne ; spécification d'une coutume compenser n'est presque jamais utile.

--delta[=Options]
Ajoutez le filtre Delta à la chaîne de filtres. Le filtre Delta ne peut être utilisé que comme
non-dernier filtre dans la chaîne de filtrage.

Actuellement, seul le calcul delta simple par octet est pris en charge. ça peut être utile
lors de la compression, par exemple des images bitmap non compressées ou de l'audio PCM non compressé.
Cependant, les algorithmes à usage spécial peuvent donner des résultats nettement meilleurs que
Delta + LZMA2. C'est particulièrement vrai avec l'audio, qui se compresse plus rapidement et
mieux par exemple avec flac (1).

Appareils Options:

dist=distance
Spécifie le distance du calcul delta en octets. distance doit être
1-256. La valeur par défaut est 1.

Par exemple, avec distance=2 et huit octets d'entrée A1 B1 A2 B3 A3 B5 A4 B7, le
la sortie sera A1 B1 01 02 01 02 01 02.

Autre Options
-q, --silencieux
Supprimer les avertissements et les avis. Spécifiez-le deux fois pour supprimer également les erreurs. Cette
L'option n'a aucun effet sur l'état de sortie. C'est-à-dire que même si un avertissement était
supprimé, l'état de sortie pour indiquer un avertissement est toujours utilisé.

-v, --verbeux
Soyez verbeux. Si l'erreur standard est connectée à un terminal, xz affichera un
indicateur de progression. En précisant --verbeux deux fois donnera une sortie encore plus détaillée.

L'indicateur de progression affiche les informations suivantes :

· Le pourcentage d'achèvement est affiché si la taille du fichier d'entrée est connue. C'est-à-dire,
le pourcentage ne peut pas être affiché dans les tuyaux.

· Quantité de données compressées produites (compression) ou consommées (décompression).

· Quantité de données non compressées consommées (compression) ou produites (décompression).

· Taux de compression, qui est calculé en divisant la quantité de données compressées
traitées jusqu'à présent par la quantité de données non compressées traitées jusqu'à présent.

· Vitesse de compression ou de décompression. Ceci est mesuré comme la quantité de
données non compressées consommées (compression) ou produites (décompression) par seconde.
Il s'affiche après quelques secondes depuis que xz commencé à traiter le
fichier.

· Temps écoulé au format M:SS ou H:MM:SS.

· Le temps restant estimé s'affiche uniquement lorsque la taille du fichier d'entrée est connue
et quelques secondes se sont déjà écoulées depuis xz commencé à traiter le
déposer. L'heure est affichée dans un format moins précis qui n'a jamais de deux-points,
par exemple 2 min 30 s.

Lorsque l'erreur standard n'est pas un terminal, --verbeux seront sélectionnés xz imprimer le nom du fichier,
taille compressée, taille non compressée, taux de compression et éventuellement aussi la vitesse
et le temps écoulé sur une seule ligne à l'erreur standard après la compression ou
décompresser le fichier. La vitesse et le temps écoulé ne sont inclus que lorsque le
l'opération a duré au moins quelques secondes. Si l'opération ne s'est pas terminée, par ex.
interruption de l'utilisateur, le pourcentage d'achèvement est également imprimé si la taille du
fichier d'entrée est connu.

-Q, --pas d'avertissement
Ne définissez pas l'état de sortie sur 2 même si une condition méritant un avertissement a été détectée.
Cette option n'affecte pas le niveau de verbosité, donc les deux --silencieux ainsi que --pas d'avertissement
doivent être utilisés pour ne pas afficher d'avertissements et pour ne pas modifier l'état de sortie.

--robot
Imprimez les messages dans un format analysable par machine. Ceci est destiné à faciliter l'écriture
frontaux qui veulent utiliser xz au lieu de liblzma, ce qui peut être le cas avec
divers scripts. La sortie avec cette option activée est censée être stable à travers
xz libère. Voir la rubrique ROBOT MODE pour en savoir plus.

--info-mémoire
Afficher, dans un format lisible par l'homme, la quantité de mémoire physique (RAM) xz pense le
système a et les limites d'utilisation de la mémoire pour la compression et la décompression, et quitter
avec succès.

-h, --Aidez-moi
Afficher un message d'aide décrivant les options les plus couramment utilisées et quitter
avec succès.

-H, --aide longue
Afficher un message d'aide décrivant toutes les fonctionnalités de xz, et quitter avec succès

-V, --version
Afficher le numéro de version de xz et liblzma dans un format lisible par l'homme. Obtenir
sortie analysable par machine, spécifiez --robot before --version.

ROBOT MODE


Le mode robot est activé avec le --robot option. Il fait la sortie de xz plus facile à
analyser par d'autres programmes. Actuellement --robot est pris en charge uniquement avec --version,
--info-mémoireet --liste. Il sera pris en charge pour la compression et la décompression normales
dans le futur.

Version
xz --robot --version imprimera le numéro de version de xz et liblzma dans ce qui suit
Format:

XZ_VERSION=XYYYZZZ
LIBLZMA_VERSION=XYYYZZZ

X Version majeure.

YYY Version mineure. Les nombres pairs sont stables. Les nombres impairs sont des versions alpha ou bêta.

ZZZ Niveau de correctif pour les versions stables ou simplement un compteur pour les versions de développement.

S Stabilité. 0 est alpha, 1 est bêta et 2 est stable. S devrait toujours être 2 quand YYY
est même.

XYYYZZZ sont les mêmes sur les deux lignes si xz et liblzma proviennent de la même version de XZ Utils.

Exemples : 4.999.9beta est 49990091 et 5.0.0 est 50000002.

Mémoire limite d'information
xz --robot --info-mémoire imprime une seule ligne avec trois colonnes séparées par des tabulations :

1. Quantité totale de mémoire physique (RAM) en octets

2. Limite d'utilisation de la mémoire pour la compression en octets. Une valeur spéciale de zéro indique le
paramètre par défaut, qui pour le mode monothread est le même qu'aucune limite.

3. Limite d'utilisation de la mémoire pour la décompression en octets. Une valeur spéciale de zéro indique le
paramètre par défaut, qui pour le mode monothread est le même qu'aucune limite.

À l'avenir, la sortie de xz --robot --info-mémoire peut avoir plus de colonnes, mais jamais
plus qu'une seule ligne.

Liste mode
xz --robot --liste utilise une sortie séparée par des tabulations. La première colonne de chaque ligne a une chaîne
qui indique le type d'information trouvée sur cette ligne :

prénom C'est toujours la première ligne lorsque vous commencez à lister un fichier. La deuxième colonne sur
la ligne est le nom du fichier.

filet Cette ligne contient des informations générales sur les .xz déposer. Cette ligne est toujours
imprimé après le prénom ligne.

courant Ce type de ligne est utilisé uniquement lorsque --verbeux a été précisé. Il y a autant courant
lignes car il y a des ruisseaux dans le .xz fichier.

bloc Ce type de ligne est utilisé uniquement lorsque --verbeux a été précisé. Il y a autant bloc
lignes car il y a des blocs dans le .xz fichier. le bloc les lignes s'affichent après toutes les
courant lignes; les différents types de lignes ne sont pas entrelacés.

résumé
Ce type de ligne est utilisé uniquement lorsque --verbeux a été spécifié deux fois. Cette ligne est
imprimé après tout bloc lignes. Comme le filet ligne, le résumé la ligne contient
informations générales sur le .xz fichier.

totaux Cette ligne est toujours la toute dernière ligne de la sortie de liste. Il montre le total
nombres et tailles.

Les colonnes du filet lignes:
2. Nombre de flux dans le fichier
3. Nombre total de blocs dans le(s) flux(s)
4. Taille compressée du fichier
5. Taille non compressée du fichier
6. Taux de compression, par exemple 0.123. Si le ratio est supérieur à 9.999, trois tirets
(---) sont affichés à la place du rapport.
7. Liste de noms de contrôle d'intégrité séparés par des virgules. Les chaînes suivantes sont utilisées
pour les types de chèques connus : Aucun, CRC32, CRC64et SHA-256. Pour chèque inconnu
les types, Inconnu-N est utilisé, où N est l'ID du chèque sous forme de nombre décimal (un ou
deux chiffres).
8. Taille totale du remplissage de flux dans le fichier

Les colonnes du courant lignes:
2. Numéro de flux (le premier flux est 1)
3. Nombre de blocs dans le flux
4. Décalage de début compressé
5. Décalage de début non compressé
6. Taille compressée (n'inclut pas le remplissage de flux)
7. Taille non compressée
8. Taux de compression
9. Nom du contrôle d'intégrité
10. Taille du rembourrage du flux

Les colonnes du bloc lignes:
2. Numéro du flux contenant ce bloc
3. Numéro de bloc relatif au début du flux (le premier bloc est 1)
4. Numéro de bloc relatif au début du fichier
5. Décalage de début compressé par rapport au début du fichier
6. Décalage de début non compressé par rapport au début du fichier
7. Taille totale compressée du bloc (inclut les en-têtes)
8. Taille non compressée
9. Taux de compression
10. Nom du contrôle d'intégrité

If --verbeux a été spécifié deux fois, des colonnes supplémentaires sont incluses sur le bloc lignes.
Ceux-ci ne sont pas affichés avec un seul --verbeux, car l'obtention de ces informations nécessite
beaucoup cherche et peut donc être lent :
11. Valeur du contrôle d'intégrité en hexadécimal
12. Taille de l'en-tête de bloc
13. Drapeaux de blocage : c indique que la taille compressée est présente, et u indique que
la taille non compressée est présente. Si le drapeau n'est pas défini, un tiret (-) est montré
au lieu de garder la longueur de chaîne fixe. De nouveaux drapeaux peuvent être ajoutés à la fin de
la chaîne à l'avenir.
14. Taille des données compressées réelles dans le bloc (cela exclut le bloc
en-tête, remplissage de bloc et champs de contrôle)
15. Quantité de mémoire (en octets) requise pour décompresser ce bloc avec ce xz
version
16. Chaîne de filtrage. Notez que la plupart des options utilisées au moment de la compression ne peuvent pas être
connu, car seules les options nécessaires à la décompression sont stockées dans
le .xz En-têtes.

Les colonnes du résumé lignes:
2. Quantité de mémoire (en octets) requise pour décompresser ce fichier avec ce xz
version
3. Oui or aucune indiquant si tous les en-têtes de bloc ont à la fois une taille compressée et
taille non compressée stockée dans ceux-ci
Depuis que xz 5.1.2alpha :
4. Minimum xz version requise pour décompresser le fichier

Les colonnes du totaux en ligne:
2. Nombre de flux
3. Nombre de blocs
4. Taille compressée
5. Taille non compressée
6. Taux de compression moyen
7. Liste séparée par des virgules des noms de contrôle d'intégrité qui étaient présents dans les fichiers
8. Taille du rembourrage du flux
9. Nombre de fichiers. C'est ici pour garder l'ordre des colonnes précédentes le
le même que sur filet lignes.

If --verbeux a été spécifié deux fois, des colonnes supplémentaires sont incluses sur le totaux en ligne:
10. Quantité maximale de mémoire (en octets) requise pour décompresser les fichiers avec ce
xz version
11. Oui or aucune indiquant si tous les en-têtes de bloc ont à la fois une taille compressée et
taille non compressée stockée dans ceux-ci
Depuis que xz 5.1.2alpha :
12. Minimum xz version requise pour décompresser le fichier

Les versions futures peuvent ajouter de nouveaux types de lignes et de nouvelles colonnes peuvent être ajoutées à la ligne existante
types, mais les colonnes existantes ne seront pas modifiées.

EXIT STATUT


0 Tout est bon.

1 Une erreur se est produite.

2 Quelque chose digne d'un avertissement s'est produit, mais aucune erreur réelle ne s'est produite.

Les avis (pas les avertissements ou les erreurs) imprimés sur l'erreur standard n'affectent pas l'état de sortie.

ENVIRONNEMENT


xz analyse les listes d'options séparées par des espaces à partir des variables d'environnement XZ_DEFAUTS ainsi que
XZ_OPT, dans cet ordre, avant d'analyser les options de la ligne de commande. Notez que seulement
les options sont analysées à partir des variables d'environnement ; toutes les non-options sont ignorées en silence.
L'analyse se fait avec getopt_long(3) qui est également utilisé pour les arguments de ligne de commande.

XZ_DEFAUTS
Options par défaut spécifiques à l'utilisateur ou à l'échelle du système. Généralement, cela est défini dans un shell
script d'initialisation pour activer xzlimiteur d'utilisation de la mémoire par défaut. À l'exclusion
scripts d'initialisation du shell et cas spéciaux similaires, les scripts ne doivent jamais définir ou
unset XZ_DEFAUTS.

XZ_OPT C'est pour passer des options à xz quand il n'est pas possible de régler les options
directement sur le xz ligne de commande. C'est le cas par exemple lorsque xz est exécuté par un script
ou un outil, par exemple GNU goudron(1):

XZ_OPT=-2v tar caf foo.tar.xz foo

Les scripts peuvent utiliser XZ_OPT par exemple pour définir des options de compression par défaut spécifiques au script. Ce
est toujours recommandé pour permettre aux utilisateurs de remplacer XZ_OPT si cela est raisonnable, par exemple
in sh(1) scripts, on peut utiliser quelque chose comme ceci :

XZ_OPT=${XZ_OPT-"-7e"}
exporter XZ_OPT

LZMA UTILITAIRES COMPATIBILITÉ


La syntaxe de la ligne de commande de xz est pratiquement un sur-ensemble de lzma, unlzmaet lzcat as
trouvé à partir de LZMA Utils 4.32.x. Dans la plupart des cas, il est possible de remplacer LZMA Utils par XZ
Utils sans casser les scripts existants. Il existe cependant quelques incompatibilités qui
peut parfois causer des problèmes.

Compression préréglé niveaux
La numérotation des préréglages de niveau de compression n'est pas identique dans xz et LZMA Utils. Les
la différence la plus importante est la façon dont les tailles de dictionnaire sont mappées sur différents préréglages.
La taille du dictionnaire est à peu près égale à l'utilisation de la mémoire du décompresseur.

Utilitaires LZMA de niveau xz
-0 256 Kio S.O.
-1 1 Mio 64 Kio
-2 2 Mio 1 Mio
-3 4 Mio 512 Kio
-4 4 Mio 1 Mio
-5 8 Mio 2 Mio
-6 8 Mio 4 Mio
-7 16 Mio 8 Mio
-8 32 Mio 16 Mio
-9 64 Mio 32 Mio

Les différences de taille du dictionnaire affectent également l'utilisation de la mémoire du compresseur, mais il y a quelques
d'autres différences entre LZMA Utils et XZ Utils, qui font la différence encore plus :

Niveau xz LZMA Utils 4.32.x
-0 3 Mio S.O.
-1 9 Mio 2 Mio
-2 17 Mio 12 Mio
-3 32 Mio 12 Mio
-4 48 Mio 16 Mio
-5 94 Mio 26 Mio
-6 94 Mio 45 Mio
-7 186 Mio 83 Mio
-8 370 Mio 159 Mio
-9 674 Mio 311 Mio

Le niveau prédéfini par défaut dans LZMA Utils est -7 alors que dans XZ Utils c'est -6, donc les deux utilisent un 8
dictionnaire MiB par défaut.

Diffusé vs. non diffusé .lzma fichiers
La taille non compressée du fichier peut être stockée dans le .lzma entête. LZMA Utils fait cela
lors de la compression de fichiers normaux. L'alternative est de marquer que la taille non compressée est
inconnu et utilisez un marqueur de fin de charge utile pour indiquer où le décompresseur doit s'arrêter.
LZMA Utils utilise cette méthode lorsque la taille non compressée n'est pas connue, ce qui est le cas pour
exemple dans les tuyaux.

xz prend en charge la décompression .lzma avec ou sans marqueur de fin de charge utile, mais tous .lzma
fichiers créés par xz utilisera le marqueur de fin de charge utile et aura une taille non compressée marquée comme
inconnu dans le .lzma entête. Cela peut être un problème dans certaines situations peu courantes. Pour
exemple, un .lzma décompresseur dans un périphérique intégré peut fonctionner uniquement avec des fichiers qui ont
taille non compressée connue. Si vous rencontrez ce problème, vous devez utiliser LZMA Utils ou LZMA SDK
à créer .lzma fichiers dont la taille non compressée est connue.

Non pris en charge .lzma fichiers
La .lzma le format permet lc valeurs jusqu'à 8, et lp valeurs jusqu'à 4. LZMA Utils peut
décompresser les fichiers avec n'importe quel lc ainsi que lp, mais crée toujours des fichiers avec LC=3 ainsi que lp=0.
Création de fichiers avec d'autres lc ainsi que lp est possible avec xz et avec LZMA SDK.

L'implémentation du filtre LZMA1 dans liblzma nécessite que la somme de lc ainsi que lp must
pas dépasser 4. Ainsi, .lzma les fichiers dépassant cette limite ne peuvent pas être décompressés
avec xz.

LZMA Utils crée uniquement .lzma fichiers qui ont une taille de dictionnaire de 2^n (une puissance de 2) mais
accepte les fichiers avec n'importe quelle taille de dictionnaire. liblzma accepte uniquement .lzma fichiers qui ont un
taille du dictionnaire de 2^n ou 2^n + 2^(n-1). Il s'agit de réduire les faux positifs lorsque
détecteur .lzma fichiers.

Ces limitations ne devraient pas être un problème dans la pratique, puisque pratiquement tous .lzma fichiers
ont été compressés avec des paramètres que liblzma acceptera.

Traînant ordures
Lors de la décompression, LZMA Utils ignore tout en silence après le premier .lzma ruisseau.
Dans la plupart des situations, il s'agit d'un bogue. Cela signifie également que LZMA Utils ne prend pas en charge
décompresser concaténé .lzma fichiers.

S'il reste des données après le premier .lzma courant, xz considère que le fichier est corrompu
à moins que --flux unique a été utilisé. Cela peut briser des scripts obscurs qui ont supposé que
les déchets de fin sont ignorés.

NOTES


Comprimé sortie Au cours de cette réunion, Matthew a obtenu de précieux conseils et Linda lui a demandé de la tenir au courant de ses progrès. varier
La sortie compressée exacte produite à partir du même fichier d'entrée non compressé peut varier
entre les versions de XZ Utils même si les options de compression sont identiques. C'est parce que le
l'encodeur peut être amélioré (compression plus rapide ou meilleure) sans affecter le format de fichier.
La sortie peut varier même entre différentes versions de la même version XZ Utils, si
différentes options de construction sont utilisées.

Ce qui précède signifie que la mise en œuvre --rsyncable pour créer rsyncable .xz les fichiers ne vont pas
se produire sans geler une partie de l'implémentation du codeur, qui peut ensuite être utilisée
avec --rsyncable.

Embarqué .xz décompresseurs
Embarqué .xz les implémentations de décompresseur comme XZ Embedded ne prennent pas nécessairement en charge les fichiers
créé avec intégrité vérifier types autres que aucun ainsi que crc32. Étant donné que la valeur par défaut est
--check=crc64, Tu dois utiliser --check=aucun or --check=crc32 lors de la création de fichiers pour l'embarqué
systèmes.

En dehors des systèmes embarqués, tous .xz les décompresseurs de format prennent en charge tous les vérifier types, ou à
moins sont capables de décompresser le fichier sans vérifier le contrôle d'intégrité si le
particulier vérifier N'est pas pris en charge.

XZ Embedded prend en charge les filtres BCJ, mais uniquement avec le décalage de début par défaut.

EXEMPLES


Basics
Compresser le fichier foo développement foo.xz en utilisant le niveau de compression par défaut (-6), et supprimez foo
si la compression est réussie :

xz foo

Décompresser bar.xz développement barre et ne pas supprimer bar.xz même si la décompression est réussie :

xz -dk bar.xz

Création baz.tar.xz avec le préréglage -4e (-4 --extrême), ce qui est plus lent que, par exemple, le
défaut -6, mais nécessite moins de mémoire pour la compression et la décompression (48 Mio et 5 Mio,
respectivement):

goudron cf-baz | xz -4e > baz.tar.xz

Un mélange de fichiers compressés et non compressés peut être décompressé en sortie standard avec un
commande unique :

xz -dcf a.txt b.txt.xz c.txt d.txt.lzma > abcd.txt

Parallèle compression of de nombreuses fichiers
Sur GNU et *BSD, trouverde Géographie (1) et avec la xarg(1) peut être utilisé pour paralléliser la compression de plusieurs
fichiers:

trouve . -type f \! -name '*.xz' -print0 \
| xargs -0r -P4 -n16 xz -T1

La -P Option de xarg(1) définit le nombre de parallèles xz processus. La meilleure valeur pour
le -n L'option dépend du nombre de fichiers à compresser. S'il n'y a qu'un
quelques fichiers, la valeur devrait probablement être 1 ; avec des dizaines de milliers de fichiers, 100 ou
encore plus peut être approprié pour réduire le nombre de xz des processus qui xarg(1) sera
finalement créer.

L'option -T1 en xz est là pour le forcer en mode monothread, car xarg(1) est
utilisé pour contrôler la quantité de parallélisation.

Robot mode
Calculez combien d'octets ont été enregistrés au total après la compression de plusieurs fichiers :

xz --robot --list *.xz | awk '/^totals/{print $5-$4}'

Un script peut vouloir savoir qu'il utilise suffisamment de nouveautés xz. Le suivant sh(1) scénario
vérifie que le numéro de version du xz l'outil est au moins 5.0.0. Cette méthode est
compatible avec les anciennes versions bêta, qui ne prenaient pas en charge le --robot option:

si ! eval "$(xz --robot --version 2> /dev/null)" ||
[ "$XZ_VERSION" -lt 50000002 ]; alors
echo "Votre xz est trop vieux."
fi
non défini XZ_VERSION LIBLZMA_VERSION

Définir une limite d'utilisation de la mémoire pour la décompression en utilisant XZ_OPT, mais si une limite a déjà été
défini, ne l'augmentez pas :

NEWLIM=$((123 << 20)) # 123 Mio
OLDLIM=$(xz --robot --info-memory | cut -f3)
if [ $OLDLIM -eq 0 -o $OLDLIM -gt $NEWLIM ]; alors
XZ_OPT="$XZ_OPT --memlimit-decompress=$NEWLIM"
exporter XZ_OPT
fi

Coutume compresseur une fonction filtre Chaînes
L'utilisation la plus simple des chaînes de filtres personnalisées consiste à personnaliser un préréglage LZMA2. Cela peut être
utile, car les préréglages ne couvrent qu'un sous-ensemble des combinaisons potentiellement utiles de
paramètres de compression.

Les colonnes CompCPU des tables issues des descriptions des options -0 -9 ainsi que
--extrême sont utiles lors de la personnalisation des préréglages LZMA2. Voici les pièces concernées
recueillies à partir de ces deux tableaux :

CompCPU préréglé
-0 0
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-5e 7
-6e 8

Si vous savez qu'un fichier nécessite un dictionnaire un peu gros (par exemple 32 Mio) pour bien compresser,
mais vous voulez le compresser plus rapidement que xz -8 ferait, un préréglage avec une faible valeur CompCPU
(par exemple 1) peut être modifié pour utiliser un dictionnaire plus gros :

xz --lzma2=preset=1,dict=32Mio foo.tar

Avec certains fichiers, la commande ci-dessus peut être plus rapide que xz -6 en compressant
nettement mieux. Cependant, il faut souligner que seuls certains dossiers bénéficient d'un
grand dictionnaire tout en gardant la valeur CompCPU faible. La situation la plus évidente, où un
grand dictionnaire peut aider beaucoup, est une archive contenant des fichiers très similaires d'au moins un
quelques mégaoctets chacun. La taille du dictionnaire doit être nettement plus grande que n'importe quel autre
fichier individuel pour permettre à LZMA2 de tirer pleinement parti des similitudes entre
fichiers consécutifs.

Si l'utilisation de la mémoire du compresseur et du décompresseur est très élevée et que le fichier est
compressé est d'au moins plusieurs centaines de mégaoctets, il peut être utile d'utiliser un encore plus gros
dictionnaire que les 64 Mio qui xz -9 voudrais utiliser:

xz -vv --lzma2=dict=192 Mo big_foo.tar

En utilisant -vv (--verbeux --verbeux) comme dans l'exemple ci-dessus peut être utile pour voir la mémoire
exigences du compresseur et du décompresseur. N'oubliez pas qu'en utilisant un dictionnaire plus gros
que la taille du fichier non compressé est un gaspillage de mémoire, donc la commande ci-dessus n'est pas
utile pour les petits fichiers.

Parfois, le temps de compression n'a pas d'importance, mais l'utilisation de la mémoire du décompresseur doit être
maintenu bas, par exemple pour permettre de décompresser le fichier sur un système embarqué. Les
la commande suivante utilise -6e (-6 --extrême) comme base et définit le dictionnaire sur seulement
64 Kio. Le fichier résultant peut être décompressé avec XZ Embedded (c'est pourquoi il existe
--check=crc32) utilisant environ 100 Kio de mémoire.

xz --check=crc32 --lzma2=preset=6e,dict=64 Ko foo

Si vous voulez extraire autant d'octets que possible, en ajustant le nombre de littéraux
bits de contexte (lc) et le nombre de bits de position (pb) peut parfois aider. Réglage de la
nombre de bits de position littérale (lp) peut aider aussi, mais généralement lc ainsi que pb sont plus
important. Par exemple, une archive de code source contient principalement du texte US-ASCII, donc quelque chose comme
ce qui suit peut donner un fichier légèrement plus petit (comme 0.1 %) que xz -6e (essayez aussi sans
LC=4):

xz --lzma2=preset=6e,pb=0,lc=4 code_source.tar

L'utilisation d'un autre filtre avec LZMA2 peut améliorer la compression avec certains types de fichiers.
Par exemple pour compresser une bibliothèque partagée x86-32 ou x86-64 à l'aide du filtre x86 BCJ :

xz --x86 --lzma2 libfoo.so

Notez que l'ordre des options de filtrage est important. Si --x86 est spécifié après
--lzma2, xz donnera une erreur, car il ne peut pas y avoir de filtre après LZMA2, et aussi
car le filtre x86 BCJ ne peut pas être utilisé comme dernier filtre de la chaîne.

Le filtre Delta associé à LZMA2 peut donner de bons résultats avec des images bitmap. Cela devrait
bat généralement PNG, qui a quelques filtres plus avancés que le simple delta mais utilise Deflate
pour la compression réelle.

L'image doit être enregistrée au format non compressé, par exemple au format TIFF non compressé. La distance
Le paramètre du filtre Delta est défini pour correspondre au nombre d'octets par pixel dans l'image.
Par exemple, le bitmap RVB 24 bits a besoin distance=3, et il est aussi bon de passer pb=0 à LZMA2 à
accueillir l'alignement sur trois octets :

xz --delta=dist=3 --lzma2=pb=0 foo.tiff

Si plusieurs images ont été placées dans une seule archive (par ex. .le goudron), le filtre Delta
travaillez là-dessus aussi tant que toutes les images ont le même nombre d'octets par pixel.

Utilisez xzcat en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

  • 1
    aarch64-linux-gnu-gnatbind
    aarch64-linux-gnu-gnatbind
    moucheron, moucheron, gnatbl, moucheron,
    gnatfind, gnathtml, gnatkr, gnatlink,
    moucherons, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - Boîte à outils GNAT
    DESCRIPTIF : Le...
    Exécutez aarch64-linux-gnu-gnatbind
  • 2
    aarch64-linux-gnu-gnatcho-5
    aarch64-linux-gnu-gnatcho-5
    moucheron, moucheron, gnatbl, moucheron,
    gnatfind, gnathtml, gnatkr, gnatlink,
    moucherons, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - Boîte à outils GNAT
    DESCRIPTIF : Le...
    Exécutez aarch64-linux-gnu-gnatcho-5
  • 3
    cpupower-idle-infos
    cpupower-idle-infos
    cpupower idle-info - Utilitaire pour
    récupérer les informations du noyau inactif du processeur
    SYNTAXE : cpupower [ -c cpulist ]
    idle-info [options] DESCRIPTION : Un outil
    qui imprime p...
    Exécutez cpupower-idle-info
  • 4
    cpupower-idle-set
    cpupower-idle-set
    cpupower idle-set - Utilitaire pour définir le processeur
    options de noyau spécifiques à l'état d'inactivité
    SYNTAXE : cpupower [ -c cpulist ]
    info-inactive [options] DESCRIPTION : Le
    cpupower inactif-se...
    Exécutez cpupower-idle-set
  • 5
    g.mapsetsgrass
    g.mapsetsgrass
    g.mapsets - Modifie/imprime l'utilisateur
    chemin de recherche du jeu de cartes actuel. Affecte la
    l'accès de l'utilisateur aux données existant sous le
    autres ensembles de cartes à l'emplacement actuel. ...
    Exécutez g.mapsetsgrass
  • 6
    g. messagegrass
    g. messagegrass
    g.message - Affiche un message, un avertissement,
    informations de progression ou erreur fatale dans le
    Chemin de l'HERBE. Ce module doit être utilisé dans
    scripts pour les messages servis à l'utilisateur.
    KEYW...
    Exécutez g.messagegrass
  • Plus "

Ad