linux压缩
现在linux用得最多的压缩技术应该是gz,bz2,xz,linux的压缩和windows的不同,linux不能压缩目录,只能压缩单个文件,这三种默认压缩都会把源文件给删除。
看一下gz,bz2和xz的用法吧!
gzip:文件后缀.gz
gzip [-cdtv#] FILE
-c:将压缩的数据输出到屏幕中,可通过重定向来处理
-d:相当于gunzip,解压缩
-#:压缩比,1-9,默认为6
-t:检查文件,看是否有错
-v:显示压缩比等信息
gunzip:
gunzip FILE.gz: 解压完成后会删除原文件
zcat FILE:不解压的情况,查看文本文件的内容
bzip2:文件后缀.bz2,比gzip有着更大压缩比的压缩工具,使用格式近似
bzip2 [-cdkzv#] FILE
-c:将压缩的数据输出到屏幕中,可通过重定向来处理
-d:相当于bunzip,解压缩
-#:压缩比,1-9,默认为6
-k:保留原文件。
-t:检查文件,看是否有错
-v:显示压缩比等信息
bunzip2: FILE.bz2 解压
bzcat:不解压的情况,查看文本文件的内容
xz FILE:文件后缀.xz,压缩比更大
-d: 解压
-#: 压缩比,1-9, 默认是6
-k: 压缩时保留原文件
由于都是只能对单个文件进行压缩,所以可以用tar工具进行归档
tar:
-c: 创建归档文件
-C dictory:在解压缩的时候,如果要在特定的目录解压缩,可以用此参数
-f FILE.tar: 操作的归档文件(必须放后面,例如-jcf)例如创建一个归档文件:tar -cf FILE.TAR file..
-x: 展开归档,展开 tar -xf FILE.TAR file..
--xattrs: 归档时,保留文件的扩展属性信息
-t: 不展开归档,直接查看归档了哪些文件
-j:用bzip2进行压缩,文件名为xxx.tar.bz2
-J:用xz进行压缩,xxx.tar.xz
-z:用gzip进行压缩
-p:保留备份数据的原本权限与属性
-P:保留绝对路径
-v:在压缩/解压缩过程中,将正在处理的文件显示出来
--exclude=FILE :在压缩过程中不要激将FILE打包
在归档的同时进行压缩可以按下面组合:
tar -tf FILE.TAR
-zcf FILE.tar.bz: 归档并调用gzip压缩,要取名
-zxf FILE.tar.gz: 调用gzip解压缩并展开归档,-z选项可省略
-jcf: 调用bzip2压缩
tar -jcf xxx.tar.bz2 file...:归档并调用bzip2压缩,要取名
-jxf xxx.tar.bz2 file...:解压
-Jcf xxx.tar.xz: 调用xz压缩,要取名
-Jxf xxx.tar.xz:解压
例:
使用tar备份/etc/目录
tar -zpcvf /root/etc.tar.gz /etc
或者:
tar -jpcvf /root/etc.tar.bz2 /etc
tar -Jpcvf /root/etc.tar.xz /etc