bzip2
est mono-threadé, ce qui signifie qu'il faudra beaucoup de temps pour décompresser un gros fichier.
Pour décompresser un fichier .bz2
en multi-threadé, 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 le paramètre -n
, par exemple :
lbzip2 -d -n 32 my_file.bz2
Quelques autres commandes utiles avec lbzip2
:
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 fichier .bz2
en mode multithread :
pbzip2
:
sudo apt-get install pbzip2
pbzip2 -d my_file.bz2
mpibzip2
: conçu pour être utilisé sur des machines en cluster.
[
]
[
]
Si vous avez besoin de fichiers .bz2
de grande taille pour faire des expériences : https://dumps.wikimedia.org/mirrors.html
Par exemple (un fichier .bz2
de 14 Go, 200 Go non compressé) :
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 :
Pour plus d'informations concernant les paramètres de lbzip2
: http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+my_file.bz2 :