linux .bz2,解压linux命令

大家好,关于linux .bz2很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于解压linux命令的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

Linux系统中安装使用Bzip2来压缩文件的方法讲解

安装 Bzip2

命令如下:

复制代码

代码如下:

make-f Makefile-libbz2_so

make

make install

cp bzip2-shared/bin/bzip2

ln-s libbz2.so.1.0 libbz2.so

cp-a libbz2.so*/lib

rm/lib/libbz2.so

ln-s../../lib/libbz2.so.1.0/usr/lib/libbz2.so

rm/usr/bin/{bunzip2,bzcat,bzip2}

mv/usr/bin/{bzip2recover,bzless,bzmore}/bin

ln-s bzip2/bin/bunzip2

ln-s bzip2/bin/bzcat

尽管不是一个必需的部分,值得说到的是有一个Tar包用的补丁,使tar程序可以更容易地用bzip2/bunzip2来压缩和解压。如果是单纯的tar,你不得不用这样的命令:bzcat file.tar.bz| tar-xv或 tar--use-compress-prog=bunzip2-xvf file.tar.bz2来使用bzip2和bunzip2。这个补丁提供了-j选项,你可以用这样的命令: tar-xvfj file.tar.bz2来解压一个bzip2格式的包。应用这个补丁将在后面安装Tar包的时候说到。

简介

bzip2, bunzip2-一种块排序文件压缩软件,v0.9.5

bzcat-将文件解压缩至标准输出

bzip2recover-恢复损坏的 bzip2文件

bzip2采用 Burrows-Wheeler块排序文本压缩算法和 Huffman编码方式压缩文件。压缩率一般比基于 LZ77/LZ78的压缩软件好得多,其性能接近 PPM族统计类压缩软件。

命令行参数有意设计为非常接近 GNU gzip的形式,但也不完全相同。

bzip2从命令行读入文件名和参数。每个文件被名为原始文件名.bz2的压缩文件替换。每个压缩文件具有与原文件相同的修改时间、权限,如果可能的话,还具有相同的属主,因此在解压缩时这些特性将正确地恢复。在某些文件系统中,没有权限、属主或时间的概念,或者对文件名的长度有严格限制,例如 MSDOS,在这种情况下,bzip2没有保持原文件名、属主、权限以及时间的机制,从这个意义上说,bzip2对文件名的处理是幼稚的。

bzip2和 bunzip2在缺省情况下不覆盖已有的文件。如果想覆盖已有的文件,要指定-f选项。

如果未指定文件名, bzip2将压缩来自标准输入的数据并写往标准输出。在这种情况下, bzip2会拒绝将压缩结果写往终端,因为这完全无法理解并且是没有意义的。

bunzip2(以及 bzip2-d)对所有指定的文件进行解压缩处理。不是由 bzip2产生的文件将被忽略,同时发出一个警告信息。 bzip2按下列方式由压缩文件名确定解压后的文件名:

filename.bz2解压成 filename

filename.bz解压成 filename

filename.tbz2解压成 filename.tar

filename.tbz解压成 filename.tar

anyothername解压成 anyothername.out

如果文件名的后缀不是下列之一:.bz2,.bz,.tbz2或.tbz,.bzip2将抱怨无法确定原始文件名,并采用原文件名加.out作为解压缩文件名。

在压缩时,如果不提供文件名,bzip2将从标准输入读取数据,压缩结果写往标准输出。

bunzip2能够正确地解压由两个或更多个压缩文件连在一起的文件。解压的结果为相应的连在一起的未压缩文件。

bzip2也支持对连在一起的压缩文件的完整性检查(-t选项)。

同样可采用-c选项将文件压缩或解压缩至标准输出。多个文件可通过这种方式压缩或解压缩。输出结果被依次送往标准输出。采用这种方式对多个文件的压缩将生成包含多个压缩文件的数据流。这样的数据流只能被 0.9.0版或其后续版本的 bzip2正确解压。较早版本的 bzip2会在解压完第一个文件之后停止。

bzcat(或 bzip2-dc)将所有指定文件解压缩至标准输出。

bzip2可从环境变量 BZIP2和 BZIP中依次读取参数,并在命令行参数之前对其进行处理。这是提供缺省选项的方便途径。

即使压缩后的文件略大于原文件,压缩也总是照样进行。小于大约 100字节的文件压缩后倾向于变大,因为会有一个 50字节的数据头。对于随机数据(包括大多数压缩软件的输出),大约每字节压成 8.05位,放大率约为 0.5%。

bzip2采用 32位 CRC校验码作自我检查,以确认解压后的文件与原始文件相同。这可用于检测压缩文件是否损坏,并防止 bzip2中未知的缺陷(运气好的话这种可能性非常小)。数据损坏而未检测到的几率非常之小,对于每个被处理的文件大约是四十亿分之一。检查是在解压缩时进行的,因此它只能说明某个地方出问题了。它能帮助恢复原始未压缩的数据。可以用 bzip2recover来尝试从损坏的文件中恢复数据。

返回值:正常退出返回 0,出现环境问题返回 1(文件未找到,非法的选项,I/O错误等),返回 2表明压缩文件损坏,出现导致 bzip2紧急退出的内部一致性错误(例如缺陷)时返回 3。

参数

-c--stdout

将数据压缩或解压缩至标准输出。

-d--decompress

强制解压缩。 bzip2, bunzip2以及 bzcat实际上是同一个程序,进行何种操作将根据程序名确定。指定该选项后将不考虑这一机制,强制 bzip2进行解压缩。

-z--compress

-d选项的补充:强制进行压缩操作,而不管执行的是哪个程序。

-t--test

检查指定文件的完整性,但并不对其解压缩。实际上将对数据进行实验性的解压缩操作,而不输出结果。

-f--force

强制覆盖输出文件。通常 bzip2不会覆盖已经存在的文件。该选项还强制 bzip2打破文件的硬连接,缺省情况下 bzip2不会这么做。

-k--keep

在压缩或解压缩时保留输入文件(不删除这些文件)。

-s--small

在压缩、解压缩及检查时减少内存用量。采用一种修正的算法进行压缩和测试,每个数据块仅需要 2.5个字节。这意味着任何文件都可以在 2300k的内存中进行解压缩,尽管速度只有通常情况下的一半。

在压缩时,-s将选定 200k的块长度,内存用量也限制在 200k左右,代价是压缩率会降低。总之,如果机器的内存较少(8兆字节或更少),可对所有操作都采用-s选项。参见下面的内存管理。

-q--quiet

压制不重要的警告信息。属于 I/O错误及其它严重事件的信息将不会被压制。

-v--verbose

详尽模式--显示每个被处理文件的压缩率。命令行中更多的-v选项将增加详细的程度,使 bzip2显示出许多主要用于诊断目的信息。

-L--license-V--version

显示软件版本,许可证条款及条件。

-1 to-9

在压缩时将块长度设为 100 k、200 k.. 900 k。对解压缩没有影响。参见下面的内存管理。

--

将所有后面的命令行变量看作文件名,即使这些变量以减号-打头。可用这一选项处理以减号-打头的文件名,例如:bzip2---myfilename.

--repetitive-fast--repetitive-best

这些选项在 0.9.5及其以上版本中是多余的。在较早的版本中,这两个选项对排序算法的行为提供了一些粗糙的控制,有些情况下很有用。 0.9.5及其以上版本采用了改进的算法而与这些选项无关。

例:

例a,压缩

复制代码

代码如下:

[root@localhost~]# bzip2-z abc.sh#压缩

复制代码

代码如下:

[root@localhost~]# bzip2-kv abc.sh#压缩原文保留

abc.sh: 1.220:1, 6.557 bits/byte, 18.04% saved, 255 in, 209 out.

复制代码

代码如下:

[root@localhost~]# bzip2-9-c abc.sh abc.bz2#压缩原文保留

例b,解压

复制代码

代码如下:

root@tnak-VirtualBox:/home/tnak# bzip2-dv abc.sh.bz2

abc.sh.bz2: done

Ubuntu中怎样将.BZ2后缀的文件夹解压(用命令行)

tar

-c:建立压缩档案

-x:解压

-t:查看内容

-r:向压缩归档文件末尾追加文件

-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的

-j:有bz2属性的

-Z:有compress属性的

-v:显示所有过程

-O:将文件解开到标准输出

下面的参数-f是必须的

-f:使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

# tar-cf all.tar*.jpg

这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

# tar-rf all.tar*.gif

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

# tar-uf all.tar logo.gif

这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

# tar-tf all.tar

这条命令是列出all.tar包中所有文件,-t是列出文件的意思

# tar-xf all.tar

这条命令是解出all.tar包中所有文件,-x是解开的意思

压缩

tar–cvf jpg.tar*.jpg//将目录里所有jpg文件打包成tar.jpg

tar–czf jpg.tar.gz*.jpg//将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

tar–cjf jpg.tar.bz2*.jpg//将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar–cZf jpg.tar.Z*.jpg//将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

rar a jpg.rar*.jpg//rar格式的压缩,需要先下载rar for linux

zip jpg.zip*.jpg//zip格式的压缩,需要先下载zip for linux

解压

tar–xvf file.tar//解压 tar包

tar-xzvf file.tar.gz//解压tar.gz

tar-xjvf file.tar.bz2//解压 tar.bz2

tar–xZvf file.tar.Z//解压tar.Z

unrar e file.rar//解压rar

unzip file.zip//解压zip

总结

1、*.tar用 tar–xvf解压

2、*.gz用 gzip-d或者gunzip解压

3、*.tar.gz和*.tgz用 tar–xzf解压

4、*.bz2用 bzip2-d或者用bunzip2解压

5、*.tar.bz2用tar–xjf解压

6、*.Z用 uncompress解压

7、*.tar.Z用tar–xZf解压

8、*.rar用 unrar e解压

9、*.zip用 unzip解压

linux下.bz2文件的安装

不是 tar.bz2结尾的应该是 patch。需要找他的目标源代码打补丁才行的。

他不能独立的使用,仅仅是个补丁而已。

这个文件解压缩,应该是直接删掉后面的.bz2扩展名就是他的文件名了。

本身 bz2是没有目录结构的压缩的,他仅仅进行数据流压缩处理。

所以 Linux会有 tar这个命令,他的作用是打包(把目标文件全都接在一起),之后他会调用 bz2/gz/lzma压缩他的输出数据。当然也可以你自己手动去单独进行压缩。

不过你下载他干吗?你还不到能自己编译内核的时候。暂时学些基础的再来吧。

阅读剩余
THE END