507 votes

Comment décompresser un fichier .bz2 ?

J'ai un fichier en tant que : filename.bz2 J'ai besoin de décompresser.

J'ai essayé la commande : tar xvjf filename.tar.bz2 mais cela n'a pas fonctionné car le fichier n'est pas un tar fichier.

Comment décompresser ce fichier ?

674voto

Lewis Diamond Points 6463

Essayez ce qui suit :

bzip2 -d filename.bz2

Notez que cette commande ne préservera pas le fichier d'archive original.

Pour préserver l'archive originale, ajoutez l'option -k option :

bzip2 -dk filename.bz2

14 votes

Vous pouvez également utiliser bunzip2, qui utilise par défaut l'option -d (décompresser).

7 votes

@alhelal c'est parce que c'est un fichier .tar.bz2. Vous avez décompressé l'archive, vous vous retrouvez avec l'archive décompressée. Extrayez-le avec tar -x vim-8.0.tar . À l'origine, vous auriez pu utiliser tar -xjvf vim-8.0.tar.bz2 .

1 votes

Une légère correction au commentaire de Lewis, tar a aussi besoin de -f (au moins sur Raspbian Wheezy) comme suit tar -xf vim-8.0.tar

24voto

Levon Points 890

Utilisez le bunzip2 又は bzip2 -d ) pour décompresser le fichier. Pour plus d'informations, consultez cette page page de manuel ,

0 votes

Le lien est cassé Levon

20voto

Franck Dernoncourt Points 17479

bzip2 est mono-thread, ce qui signifie que la décompression d'un gros fichier prendra beaucoup de temps.

Pour décompresser un .bz2 de manière multithread, vous pouvez utiliser le programme gratuit et open source lbzip2 :

sudo apt-get install lbzip2
lbzip2 -d my_file.bz2

-d indique que vous souhaitez décompresser le fichier. Il déterminera automatiquement le nombre de threads qu'il utilisera. Pour spécifier le nombre exact de threads que vous souhaitez utiliser, utilisez la commande -n paramètre, par exemple :

lbzip2 -d -n 32 my_file.bz2

Quelques autres commandes utiles avec lbzip2 :

Pour compresser un fichier avec une barre de progression :

pv adb_int.tar | lbzip2 > adb_int.tar.bz2

Conditions requises pour la barre de progression :

sudo apt-get install -y pv

Pour compresser un dossier :

tar -c -I lbzip2 -f file.tar.bz2 folder_name

Pour décompresser un dossier :

 tar -I lbzip2 -xvf file.tar.bz2

Paramètres :

-I, --use-compress-program PROG
      filter through PROG (must accept -d)
-x, --extract, --get
      extract files from an archive
-v, --verbose
      verbosely list files processed
-f, --file ARCHIVE
      use archive file or device ARCHIVE

Quelques alternatives pour décompresser un .bz2 en mode multithread :

pbzip2 :

sudo apt-get install pbzip2
pbzip2 -d my_file.bz2

mpibzip2 Le système de gestion de l'information : conçu pour être utilisé sur des machines en grappe.


Si vous avez besoin de grandes .bz2 pour faire des expériences : https://dumps.wikimedia.org/mirrors.html

Par exemple (un appareil de 14 Go .bz2 200 Go non compressés) :

wget http://dumps.wikimedia.your.org/wikidatawiki/20170120/wikidatawiki-20170120-pages-articles-multistream.xml.bz2 
lbzip2 -d -n 32 wikidatawiki-20170120-pages-articles-multistream.xml.bz2 

http://vbtechsupport.com/1614/ a fait le benchmark :

enter image description here


Pour de plus amples informations concernant les paramètres de lbzip2 : http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+mon_fichier.bz2 :

enter image description here

5voto

Vishal Points 59
bzip2 -dc my_file.tar.bz2 | tar xvf -

a fonctionné pour moi sur cygwin

1 votes

Il serait utile que vous puissiez ajouter quelques phrases à votre réponse pour expliquer ce qu'il fait.

2 votes

@fixer1234 L'option '-c' copie la sortie décompressée vers STDOUT, qui est ensuite envoyée vers l'utilitaire tar et présentée comme nom de fichier en utilisant '-', de sorte que vous pouvez le simplifier comme suit : bzip2 -d my_file.tar.bz2 ; tar xvf my_file.tar

2 votes

Cela n'aide pas, puisque l'affiche originale a déjà mentionné qu'il ne s'agit pas d'une tar archives.

-6voto

maartenmachiels Points 609
  1. Aller à https://cloudconvert.com .
  2. Téléchargez le fichier.
  3. Convertissez-le en un fichier .tar.
  4. Téléchargez-le.
  5. Extrayez-le de là, dans votre terminal.

7 votes

Ne convient pas aux fichiers très volumineux !

12 votes

Nous sommes des super-utilisateurs. Nous voulons une solution basée sur un terminal.

1 votes

M. de Santos ... et ainsi renoncer au contrôle de vos données. Vous ne pouvez pas être sérieux.

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