Cara mendekompres file .bz2


377

Saya memiliki file sebagai: filename.bz2Saya perlu mendekompresi.

Saya telah mencoba perintah:, tar xvjf filename.tar.bz2tetapi tidak berfungsi karena file tersebut bukan tarfile.

Bagaimana cara saya mendekompres file ini?

Jawaban:


497

Coba yang berikut ini:

bzip2 -d filename.bz2

Perhatikan, bahwa perintah ini tidak akan menyimpan file arsip asli.

Untuk menyimpan arsip asli, tambahkan -kopsi:

bzip2 -dk filename.bz2

4
Anda juga dapat menggunakan bunzip2, yang secara default menggunakan opsi -d (uncompress).
— RonaldB

2
@LewisDiamond saya berlari bzip2 -d vim-8.0.tar.bz2, hasilnya vim-8.0.tar. Saya tidak bisa masuk ini.
— alhelal

4
@ alhelal itu karena itu file .tar.bz2. Anda membuka ritsleting tarbal, Anda tinggal dengan tarbal ritsleting. Ekstrak dengan tar -x vim-8.0.tar. Awalnya Anda bisa menggunakannya tar -xjvf vim-8.0.tar.bz2.
— Lewis Diamond

Sedikit koreksi terhadap komentar Lewis, tar juga perlu -f (setidaknya pada Raspbian Wheezy) sebagai berikuttar -xf vim-8.0.tar
— JulianHarty

65

Untuk menjelaskan sedikit lebih jauh, satu file dapat dikompresi dengan bzip2demikian:

bzip2 myfile.txt

tar hanya diperlukan saat mengompresi banyak file:

tar cvjf myfile.tar.bz *.txt

Oleh karena itu, saat membuka kompresi .bz2penggunaan file bunzip, saat membuka kompresi tar.bz2penggunaan file tar xjvf.


6
Saran bagus tentang xjvf, baru saja menyelamatkan saya. Terima kasih!
— Edgar Aroutiounian

4
Anda bisa menggunakannya tar xjf filename.tar.bz2. The vhanya menambahkan verbose output. Jaga terminal Anda tetap bersih! Saya juga memiliki masalah dalam menjalankan tar -xjf, jadi pastikan untuk mencoba menjalankannya tanpa-
— MrOodles

1
tar xfharus cukup dengan varian BSD - jbendera hanya digunakan saat mengompresi
— Mark Fox

20

Gunakan perintah bunzip2(atau bzip2 -d) untuk mendekompres file. Untuk informasi lebih lanjut lihat halaman manual ini ,


Tautan rusak Levon
— ankii

12

bzip2 adalah mono-threaded, yang berarti akan membutuhkan waktu lama untuk mendekompresi file besar.

Untuk mendekompres .bz2file dengan multithreadedly, Anda dapat menggunakan program open source gratis lbzip2:

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

-dmenunjukkan Anda ingin mendekompres file. Secara otomatis akan menentukan berapa banyak utas yang akan digunakan. Untuk menentukan jumlah persis utas yang ingin Anda gunakan, gunakan -nparameter, misalnya:

lbzip2 -d -n 32 my_file.bz2

Beberapa perintah yang lebih berguna dengan lbzip2:

Untuk mengompres folder:

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

Untuk membuka kompresi folder:

 tar -I lbzip2 -xvf file.tar.bz2

Parameter:

-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

Beberapa alternatif untuk mendekompresi .bz2file dengan multithreadedly:

pbzip2:

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

mpibzip2: dirancang untuk digunakan pada mesin cluster.


Jika Anda memerlukan beberapa .bz2file besar untuk bereksperimen dengan: https://dumps.wikimedia.org/mirrors.html

Misalnya ( .bz2file 14 GB , 200 GB tidak terkompresi):

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/ melakukan patokan:

masukkan deskripsi gambar di sini


Untuk informasi lebih lanjut mengenai parameter untuk lbzip2: http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+my_file.bz2 :

masukkan deskripsi gambar di sini


3
bzip2 -dc my_file.tar.bz2 | tar xvf -

bekerja untuk saya di cygwin


1
Akan sangat membantu jika Anda dapat menambahkan beberapa kalimat pada jawaban Anda untuk menjelaskan apa yang dilakukannya.
— fixer1234

2
@ fixer1234 opsi '-c' menyalin output yang didekompresi ke STDOUT yang kemudian disalurkan ke utilitas tar dan disajikan sebagai nama file menggunakan '-' sehingga Anda dapat menyederhanakannya sebagai: bzip2 -d my_file.tar.bz2 ; tar xvf my_file.tar
— sactiw

1
Saya percaya bahkan ini harus bekerja bzip2 -dc my_file.tar.bz2 | tar xvyaitu tidak perlu menggunakan opsi -f dan tanda '-' yang sesuai setelah itu karena tar dapat langsung membaca dari STDOUT melalui operator pipa. Juga, jangan ragu untuk menjatuhkan opsi -v jika Anda tidak ingin membuat daftar file yang sedang diproses.
— sactiw

2
Ini tidak membantu, karena poster asli sudah menyebutkan bahwa itu bukan tararsip.
— es

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.