Bir .bz2 dosyasını açmak nasıl


377

Olarak bir dosya var: filename.bz2sıkıştırması açmam gerekiyor.

Komutu denedim: tar xvjf filename.tar.bz2ancak dosya bir tardosya olmadığı için çalışmadı .

Bu dosyayı nasıl açarım?

Yanıtlar:


495

Takip etmeyi dene:

bzip2 -d filename.bz2

Unutmayın, bu komut orijinal arşiv dosyasını korumaz.

Orijinal arşivi korumak için, -kseçeneği ekleyin :

bzip2 -dk filename.bz2

4
-D (uncompress) seçeneğini kullanmak için varsayılan olan bunzip2 komutunu da kullanabilirsiniz.
RonaldB

2
@LewisDiamond Koştum bzip2 -d vim-8.0.tar.bz2, sonuçlandı vim-8.0.tar. Buna giremedim.
alhelal

4
@alhelal bunun nedeni bir .tar.bz2 dosyası. Tarball'ı açtın, sıkıştırılmış tarbal'dan ayrıldık. İle ayıkla tar -x vim-8.0.tar. Aslında kullanmış olabilirsin tar -xjvf vim-8.0.tar.bz2.
Lewis Diamond

Lewis'in yorumunda yapılan ufak bir düzeltme, aynı zamanda -f'ye (en azından Raspbian Wheezy'de) aşağıdaki gibi ihtiyaç duyuyortar -xf vim-8.0.tar
JulianHarty

65

Biraz daha açıklamak için, tek bir dosya bu şekilde sıkıştırılabilir bzip2:

bzip2 myfile.txt

tar sadece birden fazla dosyayı sıkıştırırken gereklidir:

tar cvjf myfile.tar.bz *.txt

Bu nedenle, bir .bz2dosya kullanımı bunzipsıkıştırmasını açarken, bir tar.bz2dosya kullanımı sıkıştırmasını kaldırırken tar xjvf.


6
Xjvf hakkında mükemmel tavsiyeler, beni kurtardı. Teşekkürler!
Edgar Aroutiounian

4
Sadece kullanabilirsin tar xjf filename.tar.bz2. vSadece ayrıntılı çıktı ekler. Terminalini temiz tut! Ayrıca koşarken sorun yaşadım tar -xjf, çalıştırmayı denediğinizden emin olun-
MrOodles

1
tar xfBSD değişkeni için yeterli olmalıdır - jbayrak sadece sıkıştırma sırasında kullanılır
Mark Fox,


12

bzip2 mono dişlidir, bu da büyük bir dosyayı açmak için uzun zaman alacağı anlamına gelir.

Bir .bz2dosyayı çok iş parçacıklı sıkıştırmak için, ücretsiz, açık kaynaklı programı kullanabilirsiniz lbzip2:

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

-ddosyayı açmak istediğinizi belirtir. Ne kadar iş parçacığı kullanacağını otomatik olarak belirler. Kullanmak istediğiniz tam iplik sayısını belirlemek için -nparametreyi kullanın , örneğin:

lbzip2 -d -n 32 my_file.bz2

Birkaç faydalı komut lbzip2:

Bir klasörü sıkıştırmak için:

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

Bir klasörü açmak için:

 tar -I lbzip2 -xvf file.tar.bz2

Parametreler:

-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

Bir .bz2dosyayı çok iş parçacıklı olarak açmak için bazı alternatifler :

pbzip2:

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

mpibzip2: küme makinelerinde kullanılmak üzere tasarlanmıştır.


Denemek için bazı büyük .bz2dosyalara ihtiyacınız varsa : https://dumps.wikimedia.org/mirrors.html

Örneğin (bir 14 GB .bz2dosya, 200 GB sıkıştırılmamış):

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/ karşılaştırmayı yaptı:

görüntü tanımını buraya girin


Parametrelerle ilgili daha fazla bilgi için lbzip2: http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+my_file.bz2 :

görüntü tanımını buraya girin


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

benim için cygwin'de çalıştı


1
Ne yaptığını açıklamak için cevabınıza birkaç cümle ekleyebilirsiniz.
fixer1234

2
@ fixer1234 '-c' seçeneği kopyalar sonra kullanarak tar uygulamasının yöneltilen ve dosya adı olarak sunulmuştur STDOUT decompressed çıktı '-' bunu basitleştirmek böylece gibidir: bzip2 -d my_file.tar.bz2 ; tar xvf my_file.tar
sactiw

1
Bunun bile çalışması gerektiğine inanıyorum; bzip2 -dc my_file.tar.bz2 | tar xvyani -f seçeneğini ve sonradan gelen '-' işaretini kullanmaya gerek yok çünkü tar, STDOUT'dan boru operatörü aracılığıyla doğrudan okuyabilir. Ayrıca, işlenen dosyaları listelemek istemiyorsanız -v seçeneğini bırakmakta özgürsünüz.
19

2
Bu yardımcı olmuyor, çünkü asıl poster zaten tararşiv olmadığını söyledi .
16'da

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.