首页 / 操作系统 / Linux / 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 foob) 解压文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -d foo.gzlinuxidc@linuxidc:~/linuxidc/linux/cmdline$ gunzip foo.gzc) 列出压缩文件的压缩统计linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -l foo.gzcompresseduncompressedratio uncompressed_name 4150 2613484.2% food) 指定压缩级别linuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -v9 foofoo: 84.9% -- replaced with foo.gze) 只查看压缩文件的内容而不解压文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ date > foolinuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip foolinuxidc@linuxidc:~/linuxidc/linux/cmdline$ gzip -dc foo.gz Thu May7 17:10:35 CST 2015相关命令
gunzip - 解压缩,相当于 gzip -dzless - 查看压缩文件内容,zless test.gz 相当于 gunzip -c test.gz | lesszcat - 类似于 zless,zcat test.gz 相当于 gunzip -c test.gz | catbzip2 命令
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 foob) 解压缩文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ bunzip2 foo.bz2相关命令
bunzip2 - 解压缩,相当于 bzip2 -dbzcat - 将解压缩内容输出至标准输出,bzcat test.bz2 相当于 bunzip2 -c test.bz2 | catbzip2recover - 用于修复损坏的 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.tarlinuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar cvf foo.tar foo1 foo2 foo3b) 查看归档文件的内容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 foo3c) 从归档文件中提取文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar xvf foo.tard) 追加 foo4 至归档文件 foo.tarlinuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar rf foo.tar foo4e) 从归档文件 foo.tar 中删除 foo2linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar -f foo.tar --delete foo2f) 归档并压缩(gzip)文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar zcvf foo.tar.gz foog) 解压缩 .tar.gz 文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar zxvf foo.tar.gzh) 归档并压缩(bzip2)文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar jcvf foo.tar.bz2 fooi) 解压缩 .tar.bz2 文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ tar jxvf foo.tar.bz2zip 命令
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.ziplinuxidc@linuxidc:~/linuxidc/linux/cmdline$ zip foo.zip foo1 foo2 foo3b) 归档压缩目录linuxidc@linuxidc:~/linuxidc/linux/cmdline$ zip -r commons-beanutils-1.9.2.zip commons-beanutils-1.9.2c) 解压缩 .zip 文件linuxidc@linuxidc:~/linuxidc/linux/cmdline$ unzip commons-beanutils-1.9.2.zipLinux-文件压缩和归档 http://www.linuxidc.com/Linux/2013-12/94359.htm本文永久更新链接地址