感谢支持
我们一直在努力

Linux 文件的压缩与归档

Linux 文件的压缩与归档

文件压缩

常用的压缩命令有 gzip、bzip2 等。

gzip 命令
命令格式

gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name …  ]

命令参数

-c –stdout –to-stdout
  将输出内容写到标准输出端口,并保持原有文件不变

-d –decompress –uncompress
  解压缩

-f –force
  强制压缩

-h –help
  打印帮助信息

-l –list
  列出压缩文件的压缩统计

-L –license
  打印版本与版权信息

-q –quiet
  不显示警告信息

-r –recursive
  递归(解)压缩

-S .suf –suffix .suf
  指定压缩文件的后缀为 .suf,默认后缀是 .gz

-t –test
  检验压缩文件的完整性

-v –verbose
  在(解)压缩时显示详细信息

-V –version
  打印版本与版权信息

-# –fast –best
  设定压缩级别。# 的取值范围为 1~9,# 的取值越大,压缩速度越慢,压缩效果越好。默认取值为 6。

实例

a) 压缩文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip foo

b) 解压文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -d foo.gz
linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gunzip foo.gz

c) 列出压缩文件的压缩统计

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -l foo.gz 
         compressed        uncompressed  ratio uncompressed_name
               4150               26134  84.2% foo

d) 指定压缩级别

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -v9 foo
foo:	 84.9% -- replaced with foo.gz

e) 只查看压缩文件的内容而不解压文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ date > foo
linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip foo
linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -dc foo.gz 
Thu May  7 17:10:35 CST 2015

相关命令

gunzip – 解压缩,相当于 gzip -d

zless – 查看压缩文件内容,zless test.gz 相当于 gunzip -c test.gz | less

zcat – 类似于 zless,zcat test.gz 相当于 gunzip -c test.gz | cat

bzip2 命令

bzip2 与 gzip 命令功能类似,但使用不同的压缩算法。该算法具有高质量的数据压缩能力,但却降低了压缩速度。多数情况下,其用法与 gzip 类似,只是用 bzip2 压缩后的文件以 .bz2 为后缀。

命令格式

bzip2 [ -cdfkqstvzVL123456789 ] [ filenames …  ]

命令参数

-c –stdout
  将数据压缩或解压缩至标准输出。

-d –decompress
  强制解压缩

-z –compress
  -d 选项的补充,强制压缩文件

-t –test
  检验压缩文件的完整性

-f –force
  强制覆盖输出文件。

-k –keep
  在(解)压缩过程中保留原文件

-s –small
  在压缩、 解压缩及检查时减少内存的使用量。

-q –quiet
  不显示警告信息

-v –verbose
  在(解)压缩时显示详细信息

-L –license -V –version
  打印版本与版权信息

-1 (or –fast) to -9 (or –best)
  设置压缩级别,数值越大,压缩速度越慢,压缩效果越好。

实例

a) 压缩文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ bzip2 foo

b) 解压缩文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ bunzip2 foo.bz2

相关命令

bunzip2 – 解压缩,相当于 bzip2 -d

bzcat – 将解压缩内容输出至标准输出,bzcat test.bz2 相当于 bunzip2 -c test.bz2 | cat

bzip2recover – 用于修复损坏的 bz2 文件的数据

 

文件归档

归档是与压缩操作配合使用的一个常用文件管理任务。归档是一个聚集众多文件并将它们组合为一个大文件的过程。

tar 命令
命令格式

tar [OPTION…] [FILE]…

命令参数

-A, –catenate, –concatenate
  追加 tar 文件到归档文件中

-c, –create
  创建新的归档文件

-d, –diff, –compare
  查找归档文件与文件系统的差异

–delete
  从归档文件里删除指定的文件

-r, –append
  追加文件到归档文件

-t, –list
  列出归档文件的内容

-u, –update
  仅追加比归档文件更新的文件

-x, –extract, –get
  从归档文件中提取文件

实例

a) 将foo1、foo2 和 foo3 归档至 foo.tar

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar cvf foo.tar foo1 foo2 foo3

b) 查看归档文件的内容

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar tvf foo.tar
-rw-rw-r-- linuxidc/huey 26840 2015-05-07 19:28 foo1
-rw-rw-r-- linuxidc/huey 13047 2015-05-07 19:28 foo2
-rw-rw-r-- linuxidc/huey 348 2015-05-07 19:28 foo3

c) 从归档文件中提取文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar xvf foo.tar

d) 追加 foo4 至归档文件 foo.tar

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar rf foo.tar foo4

e) 从归档文件 foo.tar 中删除 foo2

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar -f foo.tar --delete foo2

f) 归档并压缩(gzip)文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar zcvf foo.tar.gz foo

g) 解压缩 .tar.gz 文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar zxvf foo.tar.gz

h) 归档并压缩(bzip2)文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar jcvf foo.tar.bz2 foo

i) 解压缩 .tar.bz2 文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar jxvf foo.tar.bz2

zip 命令

zip 程序既是文件压缩工具也是文件归档工具。在 Linux 系统中,gzip 才是主要的压缩指令,而 bzip2 次之。在 Linux 系统中主要使用 zip 程序与 Windows 系统交换文件,而不是将其用于压缩或是归档文件。

命令格式

zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [–longoption …]  [-b path] [-n suffixes] [-t date] [-tt date] [zipfile [file …]]  [-xi list]

unzip [-Z] [-cflptTuvz[abjnoqsCDKLMUVWX$/:^]] file[.zip] [file(s) …]  [-x xfile(s) …] [-d exdir]

实例

a) 将 foo1、foo2 和 foo3 归档压缩至 foo.zip

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ zip foo.zip foo1 foo2 foo3

b) 归档压缩目录

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ zip -r commons-beanutils-1.9.2.zip commons-beanutils-1.9.2

c) 解压缩 .zip 文件

linuxidc@linuxidc:~/linuxidc/linux/cmdline$ unzip commons-beanutils-1.9.2.zip

Linux-文件压缩和归档 http://www.linuxidc.com/Linux/2013-12/94359.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-05/117236.htm

赞(0) 打赏
转载请注明出处:服务器评测 » Linux 文件的压缩与归档
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏