Linux 命令(文件和目录管理 - bzip2/bunzip2)

简述

bzip2 是 Linux 下一款压缩软件,能够高效地完成文件数据的压缩,支持现在大多数的压缩格式,包括 tar、gzip 等。若没有加上任何参数,bzip2 压缩完文件后会产生 .bz2 的压缩文件,并删除原始文件。bzip2 比传统的 gzip 或 zip 的压缩效率更高,但是它的压缩速度较慢。bzip2 只是一个数据压缩工具,而不是归档工具,在这一点上与 gzip 类似。

| 版权声明:一去、二三里,未经博主允许不得转载。

gzip

命令介绍

  • 命令名称
    bzip2

  • 基本语法
    bzip2 [OPTION]… [FILE]…

  • 功能描述
    压缩文件。压缩后的文件扩展名为 .bz2,默认压缩后会删除原文件。

命令选项

选项 说明
-h --help 显示帮助
-d --decompress 执行解压缩
-z --compress 强制执行压缩
-k --keep 压缩或解压缩后,会删除原始文件。若要保留原始文件,请使用此参数。 
-f --force 压缩或解压缩时,若输出文件与现有文件同名,默认不会覆盖现有文件。若要覆盖,请使用此参数。
-t, --test 检查压缩文件的完整性
-c, --stdout 将压缩与解压缩的结果输出到标准输出设备
-q, --quiet 不显示错误信息
-v, --verbose 压缩或解压缩文件时,显示详细信息
-L --license 显示版本信息和许可
-V --version 显示版本信息和许可
-s --small 降低程序执行时内存的使用量(最多2500 k)
-1(或 --fast) .. -9(或 --best) 设置块大小为 100k ..900k
--repetitive-best 若文件中有重复出现的资料时,可利用此参数提高压缩效果。
--repetitive-fast 若文件中有重复出现的资料时,可利用此参数加快执行速度。

使用范例

1.压缩文件,压缩后原文件被删除

[wang@localhost linux]$ ls -l
总用量 33132
-rw-rw-r--. 1 wang wang       31 929 11:03 hello.sh
-rw-r--r--. 1 wang wang 33921784 67 11:02 linux-program.pdf
[wang@localhost linux]$ bzip2 hello.sh 
[wang@localhost linux]$ ls -l
总用量 33132
-rw-rw-r--. 1 wang wang       72 929 11:03 hello.sh.bz2
-rw-r--r--. 1 wang wang 33921784 67 11:02 linux-program.pdf

2.压缩后,保留原文件

# 计算压缩后文件的 md5 值
[wang@localhost linux]$ bzip2 hello.sh 
[wang@localhost linux]$ md5sum hello.sh.bz2 
39a9623f5ddb0ecbc4f3cee2fdd9245e  hello.sh.bz2
# 解压缩(还原回去)
[wang@localhost linux]$ bunzip2 hello.sh.bz2 
# 如果要保留原文件,使用下面命令
[wang@localhost linux]$ bzip2 -k hello.sh 
[wang@localhost linux]$ ls
hello.sh  hello.sh.bz2  linux-program.pdf
[wang@localhost linux]$ md5sum hello.sh.bz2 
39a9623f5ddb0ecbc4f3cee2fdd9245e  hello.sh.bz2

显然,校验 md5 值,和直接使用 bzip2 一致。

3.压缩时,显示详细信息

[wang@localhost linux]$ bzip2 -v hello.sh 
  hello.sh:  0.431:1, 18.581 bits/byte, -132.26% saved, 31 in, 72 out.
[wang@localhost linux]$ ls -l
总用量 33132
-rw-rw-r--. 1 wang wang       72 929 11:03 hello.sh.bz2
-rw-r--r--. 1 wang wang 33921784 67 11:02 linux-program.pdf

4.解压缩

[wang@localhost linux]$ bzip2 hello.sh 
[wang@localhost linux]$ ls
hello.sh.bz2  linux-program.pdf
[wang@localhost linux]$ bzip2 -d hello.sh.bz2 
[wang@localhost linux]$ ls
hello.sh  linux-program.pdf

5.解压到标准输出

使用 -c 选项指定到标准输出,输出的是文件 hello.sh 的内容,不会将 hello.sh.bz2 删除。

[wang@localhost linux]$ bzip2 -dc hello.sh.bz2 
#!/bin/sh

echo "Hello World!"
[wang@localhost linux]$ ls
hello.sh.bz2  linux-program.pdf

bunzip2

命令介绍

  • 命令名称
    bunzip2

  • 基本语法
    bunzip2 [OPTION]… [FILE]…

  • 功能描述
    解压缩文件

命令选项

选项 说明
-k --keep 压缩或解压缩后,会删除原始文件。若要保留原始文件,请使用此参数。 
-f --force 压缩或解压缩时,若输出文件与现有文件同名,默认不会覆盖现有文件。若要覆盖,请使用此参数。
-v, --verbose 压缩或解压缩文件时,显示详细信息
-s --small 降低程序执行时内存的使用量(最多2500 k)
-1(或 --fast) .. -9(或 --best) 设置块大小为 100k ..900k

使用范例

1.解压缩文件

[wang@localhost linux]$ ls
hello.sh.bz2  linux-program.pdf
[wang@localhost linux]$ bunzip2 hello.sh.bz2 
[wang@localhost linux]$ ls
hello.sh  linux-program.pdf

2.解压缩时,显示详细信息

[wang@localhost linux]$ bunzip2 -v hello.sh.bz2 
  hello.sh.bz2: done
[wang@localhost linux]$ ls
hello.sh  linux-program.pdf

3.解压到标准输出

[wang@localhost linux]$ bunzip2 -c hello.sh.bz2 
#!/bin/sh

echo "Hello World!"
[wang@localhost linux]$ ls
hello.sh.bz2  linux-program.pdf
展开阅读全文
©️2020 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值