931 votes

Comment décompresser une archive qui utilise .xz ?

J'ai l'habitude d'extraire les tarballs avec une -xfz qui gère les archives gzip et bzip2.

Récemment, je suis tombé sur un .tar.xz et je voudrais le décompresser en une seule étape en utilisant tar Comment puis-je faire ça ?

12 votes

Notez que vous devrez peut-être installer xz-utils si elle n'est pas déjà présente

5 votes

tar --help listes tar drapeaux. -xzf s'applique à gzip . -xjf a bz2 . -xJf a xz .

0 votes

Meilleure question à poser que celle de savoir comment faire avec du goudron : Utilisez unar ou 7z et ne vous souciez plus jamais de choisir le bon programme pour votre type d'archives. C'est la seule solution envisageable avec l'arrivée de plus en plus de types d'archives. À moins que vous ne vous intéressiez aux détails techniques...

3voto

Sergiy Kolodyazhnyy Points 97292

Ubuntu est livré avec Python (Python 2.7 et Python 3), qui contient les modules nécessaires à l'extraction d'archives. Ainsi, si pour une raison quelconque tar est manquante (disons que votre administrateur système l'a supprimée et que vous ne disposez pas de la commande sudo privillege pour l'installer), on peut utiliser :

python3 -c 'import tarfile,sys; b = tarfile.open(sys.argv[1]);print(b.extractall())' ./archive.xz 

Comme un court script, c'est plus lisible comme :

#!/usr/bin/env python3
import tarfile,sys

with tarfile.open( sys.argv[1] ) as fd:
    fd.extractall()

Supposons que j'ai créé un .xz avec tar cJf thing.xz /etc/passwd . L'archive contiendra etc avec passwd à l'intérieur. En utilisant le script ci-dessus, vous obtiendrez les résultats suivants etc créé dans votre répertoire de travail actuel, et à l'intérieur de celui-ci se trouvera passwd fichier. Bien sûr, cela peut toujours être étendu en spécifiant le chemin d'accès où vous voulez extraire à l'intérieur de la balise extractall() fonction.

1voto

cat Points 1562

unar est un programme simple et facile à utiliser, qui permet de désarchiver presque tous les formats, y compris 7z et RAR.

il semble être écrit en Objective-C (GNU) et nécessite donc l'installation d'un certain nombre d'applications. gnustep (l'implémentation Objective-C de GNU) des bibliothèques ( gnustep-base-runtime et libgnustep-base1.25 )

si vous utilisez --install-suggests ou si vous avez configuré apt pour installer les paquets suggérés, unar suggérera et installera de nombreux programmes GUI GNUStep qui ne sont pas ce que vous voulez.

sudo apt install --no-install-suggests unar 
unar linux-source.tar.xz

il créera le répertoire de sortie linux-source automatiquement.

1 votes

Meilleure réponse (bien que la question mentionne spécifiquement l'utilisation de goudron pour ce travail...). Depuis que j'ai installé ce programme, je n'ai plus jamais eu besoin de chercher comment décompresser l'archive X. Toutes ces connaissances sont encodées dans ce programme. Toutes ces connaissances sont encodées dans ce programme. C'est exactement comme ça que tout devrait être travailler ensemble ...

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X