Como descomprimir um ficheiro .bz2
Tenho um ficheiro como: filename.bz2 Preciso de descomprimir.
Tentei o comando: tar xvjf filename.tar.bz2, mas não funcionou porque o ficheiro não é um ficheiro tar.
Como descomprimir este ficheiro?
Tenho um ficheiro como: filename.bz2 Preciso de descomprimir.
Tentei o comando: tar xvjf filename.tar.bz2, mas não funcionou porque o ficheiro não é um ficheiro tar.
Como descomprimir este ficheiro?
Tente o seguinte:
bzip2 -d filename.bz2
Note que este comando não irá preservar o arquivo original.
Para preservar o arquivo original, adicione a opção -k:
bzip2 -dk filename.bz2
Para explicar um pouco mais, um único ficheiro pode ser comprimido com bzip2 assim:
bzip2 myfile.txt
tar só é necessário quando se comprime vários ficheiros:
tar cvjf myfile.tar.bz *.txt
Assim, quando se descomprime um ficheiro .bz2 utiliza bunzip, quando se descomprime um ficheiro tar.bz2 utiliza tar xjvf.
bzip2 é mono-threaded, o que significa que levará muito tempo a descomprimir um ficheiro grande.
Para descomprimir um ficheiro .bz2 multithreadedly, pode usar o programa gratuito de código aberto lbzip2 :
sudo apt-get install lbzip2
lbzip2 -d my_file.bz2
-d indica que deseja descomprimir o ficheiro. Determinará automaticamente quantos fios irá utilizar. Para especificar o número exacto de threads que pretende utilizar, utilize o parâmetro -n, por exemplo
lbzip2 -d -n 32 my_file.bz2
Mais alguns comandos úteis com lbzip2:
Para comprimir uma pasta:
tar -c -I lbzip2 -f file.tar.bz2 folder_name
Para descomprimir uma pasta:
tar -I lbzip2 -xvf file.tar.bz2
Parâmetros:
-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
Algumas alternativas para descomprimir um ficheiro .bz2 multithreadedly:
pbzip2 :
sudo apt-get install pbzip2
pbzip2 -d my_file.bz2
mpibzip2 : concebido para ser utilizado em máquinas de cluster.
Se precisar de alguns ficheiros .bz2 de grandes dimensões para experimentar: https://dumps.wikimedia.org/mirrors.html
Por exemplo (um ficheiro de 14 GB .bz2, 200 GB não comprimido):
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/ fez o benchmark:
Para mais informações sobre os parâmetros para lbzip2: http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+my_file.bz2 :