linux bzip2,linux块设备有哪些
大家好,今天小编来为大家解答以下的问题,关于linux bzip2,linux块设备有哪些这个很多人还不知道,现在让我们一起来看看吧!
Linux——如何在 Linux 终端解压 Bzip2 文件
使用Linux终端解压Bzip2文件,我们主要依赖于tar命令。tar命令支持多种压缩格式,如gzip、lzip、bzip2、lzma、lzop、xz和compress。对于使用bzip2压缩的文件,其扩展名为.tar.bz2或.tbz2。借助tar命令,我们能简便地压缩和解压.tar.bz2和.tbz2格式的文件。
解压一个.tar.bz2文件,我们只需在tar命令中使用--extract或-x选项,随后加上-f选项以及解压文件的名称。这命令将自动识别并解压使用的压缩类型,例如bzip2。同样地,我们也能用此方法解压使用其他算法压缩的文件。
对于多数Linux用户来说,tar工具在系统安装时已预装,而Windows用户则可选用7-zip工具来解压.bz2文件。如果想要在解压时获得更多细节信息,如文件名、所有者、大小、时间戳等,可以使用-v选项。
默认情况下,tar命令将解压文件内容至当前工作目录。若需在特定目录下解压,我们可通过--directory或-C选项指定路径。例如,将当前目录下的compressed.tar.bz2文件解压至home目录下的Extracted_files。
要列出.tar.bz2文件的内容,使用tar命令的--list或-t选项。这将显示文件名清单。若需更多详细信息,如所有者、文件大小、时间戳等,使用-v选项。
如果仅需从压缩文件中解压特定的文件和目录,可在命令中列出要解压的文件和目录名称,使用空格分隔。例如,解压1.mp3和2.mp3文件,只需在命令中列出这两个文件名。在指定文件时,需准确使用路径,使用-t选项列出所有内容。
若要解压特定的目录,如jazz和Rock,直接在命令中列出目录名称即可。若指定的文件不存在,tar命令会提示未找到该文件。例如,若文件rolling.jpeg不存在,会显示错误提示。
总之,熟练掌握tar命令有助于高效管理Linux系统中的文件和目录。通过实践和理解,逐步提升Linux技能。祝大家在学习Linux过程中有所收获。
Linux入门之bzip2指令详解
在Linux系统中,文件压缩与解压缩是日常管理工作中不可或缺的一部分。bzip2是一种广泛使用的压缩程序,以其高效的压缩率和相对较快的压缩速度而受到用户的青睐。本文将详细介绍bzip2指令的使用方法,帮助Linux初学者快速上手。
什么是bzip2?
bzip2是由Julian Seward开发的一个开源文件压缩工具。它使用Burrows-Wheeler转换和Huffman编码的组合来压缩数据。bzip2的压缩算法在许多情况下都能提供比传统的ZIP格式更好的压缩率,同时保持了较快的压缩和解压缩速度。
安装bzip2
大多数Linux发行版都预装了bzip2工具。如果没有,可以通过包管理器进行安装。例如,在基于Debian的系统上,可以使用以下命令安装:
sudo apt-get install bzip2
在基于Red Hat的系统上,可以使用以下命令:
sudo yum install bzip2
bzip2基本用法
bzip2的基本命令格式如下:
bash
bzip2 [选项]文件名
下面是一些常用的选项:
压缩文件
bash
bzip2 example.txt
执行后,`example.txt`将被压缩为`example.txt.bz2`。如果希望保留原文件,可以使用 `-k`选项:
bash
bzip2-k example.txt
这将生成`example.txt.bz2`,而`example.txt`原文件将保持不变。
解压缩文件
解压缩.bz2格式的文件非常简单,使用 `-d`选项即可:
bash
bzip2-d example.txt.bz2
执行后,`example.txt.bz2`将被解压缩为`example.txt`。
压缩并输出到标准输出
有时候,我们可能需要将压缩数据输出到标准输出,而不是直接写入文件。这时可以使用 `-c`选项:
bash
bzip2-c example.txt> example.txt.bz2
这将创建一个名为`example.txt.bz2`的压缩文件。
保留原文件并压缩
如果希望在压缩文件的同时保留原文件,可以使用 `-k`选项:
bash
bzip2-k example.txt
这将生成`example.txt.bz2`,同时保留原文件`example.txt`。
查看压缩比
使用 `-v`选项可以查看压缩后的文件大小和压缩比:
bash
bzip2-v example.txt
高级用法
多文件压缩
可以一次性压缩多个文件:
bash
bzip2-v example.txt example2.txt
递归压缩目录
使用 `-r`选项可以递归地压缩目录中的所有文件:
bash
bzip2-rv/path/to/directory
压缩特定类型的文件
如果只想压缩特定类型的文件,可以结合使用 `find`命令和 `bzip2`:
bash
find/path/to/directory-type f-name"*.txt"-exec bzip2-v{}\;
压缩并删除原文件
如果希望在压缩后删除原文件,可以结合使用 `-k`和管道:
bash
bzip2-vk example.txt
常见问题
压缩速度慢
bzip2在默认情况下会使用较多的CPU资源以获得更高的压缩率。如果希望加快压缩速度,可以适当降低压缩级别:
bash
bzip2-l1 example.txt
解压缩失败
确保解压缩的文件是bzip2格式的。如果文件损坏或不是bzip2格式,解压缩将会失败。
结语
bzip2是Linux系统中一个非常实用的工具,通过本文的介绍,初学者应该能够掌握其基本的使用方法。在实际使用中,根据不同的需求选择合适的选项,可以更高效地进行文件的压缩与解压缩工作。随着实践的深入,对bzip2的高级功能也会逐渐熟悉。
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