filename.bz2
我需要解压缩。我已经尝试了以下命令:
tar xvjf filename.tar.bz2
,但是由于该文件不是tar
文件,所以它不起作用。 如何解压缩此文件?
#1 楼
请尝试以下操作:bzip2 -d filename.bz2
请注意,此命令将不会保留原始存档文件。
要保留原始存档,请添加
-k
选项:bzip2 -dk filename.bz2
#2 楼
为了进一步说明,可以使用bzip2
压缩单个文件,从而:bzip2 myfile.txt
tar
仅在压缩多个文件时才需要:tar cvjf myfile.tar.bz *.txt
因此,当解压缩
.bz2
文件时,请使用bunzip
;当解压缩tar.bz2
文件时,请使用tar xjvf
。评论
关于xjvf的出色建议,救了我。谢谢!
– Edgar Aroutiounian
13年8月17日在3:22
您可以只使用tar xjf filename.tar.bz2。 v仅添加详细输出。保持终端清洁!我在运行tar -xjf时也遇到了问题,因此请确保在没有-的情况下尝试运行它。
–MrOodles
2015年1月15日15:14
tar xf对于BSD变体应该足够了-仅在压缩时使用j标志
–马克·福克斯
15-10-30在0:16
#3 楼
使用bunzip2
(或bzip2 -d
)命令解压缩文件。有关更多信息,请参见此手册页,评论
链接已损坏Levon
–user1038202
19年5月19日在6:31
#4 楼
bzip2
是单线程的,这意味着要解压缩一个大文件将花费很长时间。要多线程解压缩
.bz2
文件,您可以使用免费的开源程序lbzip2
:sudo apt-get install lbzip2
lbzip2 -d my_file.bz2
-d
表示您希望解压缩文件。它将自动确定将使用多少个线程。要指定要使用的确切线程数,请使用-n
参数,例如:lbzip2 -d -n 32 my_file.bz2
lbzip2
还有一些有用的命令:要压缩文件夹:
tar -c -I lbzip2 -f file.tar.bz2 folder_name
要解压缩文件夹:
tar -I lbzip2 -xvf file.tar.bz2
参数:
-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
一些替代方法可以多线程解压缩
.bz2
文件:pbzip2
:sudo apt-get install pbzip2
pbzip2 -d my_file.bz2
mpibzip2
:设计用于群集计算机。如果需要一些较大的
.bz2
文件进行试验:https://dumps.wikimedia .org / mirrors.html 例如(一个14 GB
.bz2
文件,未压缩200 GB):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 /进行了基准测试:
有关
lbzip2
参数的更多信息:http://explainshell.com/explain?cmd = lbzip2 + -d + -n + 32 + my_file.bz2:q4 312010q
#5 楼
bzip2 -dc my_file.tar.bz2 | tar xvf -
为我设计了cygwin
评论
如果您可以在答案中添加一些句子以说明其作用,将很有帮助。
–fixer1234
2015年5月21日在17:25
@ fixer1234'-c'选项将解压缩的输出复制到STDOUT,然后将其通过管道传输到tar实用程序并使用'-'作为文件名显示,因此您可以将其简化为:bzip2 -d my_file.tar.bz2;焦油xvf my_file.tar
–仙人掌
16年1月7日在19:39
我相信即使这样也可以工作bzip2 -dc my_file.tar.bz2 | tar xv,即无需在其后使用-f选项和相应的'-'符号,因为tar可以通过管道运算符直接从STDOUT中读取。另外,如果您不想列出正在处理的文件,请随意删除-v选项。
–仙人掌
16年1月7日在19:45
这没有帮助,因为原始海报已经提到它不是tar存档。
–冰水
16年1月15日,下午2:29
#6 楼
转到https://cloudconvert.com。
上传文件。
将其转换为.tar文件。
下载它。
从那里提取文件,在您的终端中。
评论
不适合大型文件!
–narendranathjoshi
16-2-3在9:04
我们是超级用户。我们需要一个基于终端的解决方案。
–noɥʇʎԀʎzɐɹƆ
16年6月7日在16:41
@先生。 de Santos ...从而放弃对数据的控制。开玩笑吧。
–dirdir
19-09-16在18:22
评论
您还可以使用bunzip2,它默认使用-d(解压缩)选项。
– RonaldB
17年1月19日在16:18
@LewisDiamond我运行了bzip2 -d vim-8.0.tar.bz2,结果为vim-8.0.tar。我无法输入。
–alhelal
17年11月17日在0:35
@alhelal那是因为它是一个.tar.bz2文件。您解压缩了tarball,剩下了解压缩的tarbal。用tar -x vim-8.0.tar提取它。最初,您可以使用tar -xjvf vim-8.0.tar.bz2。
–刘易斯·戴蒙德
17年11月17日在15:52
对Lewis的评论稍作修正,tar也需要-f(至少在Raspbian Wheezy上),如下所示tar -xf vim-8.0.tar
– JulianHarty
17/12/17在14:29