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 :