Extraire des fichiers 7z avec des outils Linux standard?

29

Je sais que vous pouvez extraire des .7zfichiers avec 7-zip.

Existe-t-il un autre programme Linux standard qui peut le faire? Peut-être l'un de ces

tar
bzip2
xz
gzip

J'ajouterai que cela bsdtarpeut le faire, mais n'est pas disponible sur tous les systèmes.

Steven Penny
la source
question similaire: 7zip pour linux
Santosh Kumar
askubuntu.com/questions/219392/how-can-i-uncompress-a-7z-file
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

Réponses:

10

Les archives 7-Zip utilisent LZMA et LZMA2, qui ne sont pas prises en charge par les outils standard (ils utilisent également bzip2, mais vous devez toujours décoder l'en-tête).

Ignacio Vazquez-Abrams
la source
1
En fait, xzutilise également LZMA. Mais oui, il ne comprend toujours pas le reste du format 7z.
jjlin
31

Les archives 7-zip peuvent être extraites avec p7zip ( http://p7zip.sourceforge.net/ ) sous Linux. Il est inclus dans les référentiels de: Debian, Fedora, Ubuntu et éventuellement d'autres distributions.

Lister le contenu avec (minuscule L, pour la liste):

7za l myarchive.7z

Extraire le contenu:

7za x myarchive.7z
Mike Fleetwood
la source
1
p7zip est disponible dans macports, au format binaire. Juste:sudo port install p7zip
smci
2
sur 64 bits RHEL 6, installez p7zip.x86_64 et, si nécessaire, installez p7zip-plugins.x86_64
rivu
2

La façon "standard" de travailler avec les archives 7-Zip sous Unix est d'utiliser P7ZIP . Mais puisque le format 7-Zip a été conçu principalement pour Windows, vous ne devriez pas vraiment vous attendre P7ZIPà être installé sur les distributions Linux par défaut.

Si vous souhaitez bénéficier de la compression LZMA sur Unix, préférez XZ Utils .

jjlin
la source
1

Je n'ai trouvé 7za dans aucun référentiel yum sur RHEL / CentOS, donc je viens de télécharger la dernière version de source depuis sourceforge.net:

$ wget https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_src_all.tar.bz2

(remplacez «16.02» ci-dessus par la dernière version au moment où vous essayez de télécharger, vous pouvez le découvrir en allant sur https://sourceforge.net/projects/p7zip/files/p7zip/ ).

Étant dans le répertoire où vous avez téléchargé l'archive p7zip, décompressez-le:

$ tar -xvjf p7zip_16.02_src_all.tar.bz2

Exécutez ensuite la commande make en tant qu'utilisateur root dans le dossier extrait:

# make
# make install

Cela produira du 7zabinaire dans le /usr/local/binrépertoire (si vous utilisez RHEL7 au moins):

$ whereis 7za
7za: /usr/local/bin/7za
Tagar
la source
0

J'ai essayé 7za au premier coup, mais cela n'a pas fonctionné, j'ai donc essayé d'utiliser 7z avec les mêmes options et cela fonctionne. Voici l'exemple: Pour extraire: 7z e xy213file.7z

Avinash
la source
0

Le binaire 7za fait partie du paquet p7zip qui pourrait être utilisé pour cela. Il peut être installé à partir du epelréférentiel si vous utilisez RHEL / OL / CentOS (testé sur RHEL6 / RHEL7):

RHEL6, 7:

# rpm -Uvh http://mirrors.kernel.org/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
# yum install p7zip

Ce paquet n'a pas été mis à jour depuis longtemps, mais pourrait toujours être utilisé pour extraire des fichiers:

$ 7za x xyz_7zfile.7z
Gryu
la source
-1

Le package p7zip est disponible sous macports, sous forme binaire.

Juste: sudo port install p7zip

Et tu es parti! 7z x downloads/myfile.7z

Il en va de même pour CentOS mais en utilisant yum:

sudo yum install p7zip

smci
la source