Linux之文件压缩gzip,bzip,tar等

来源:互联网 发布:淘宝加购什么意思 编辑:程序博客网 时间:2024/05/29 19:05

1.压缩

常见的压缩命令有bzip2和gzip,但是都只能针对一个文件压缩/解压缩,因此出现了打包工具tar。其中gzip压缩后,源文件没有了,取而代之的是压缩文件.gz.

#压缩gzip file  #解压缩gzip -d file.gz#查看压缩文件zcat file.gz#采用最佳压缩比,并保留源文件gzip -9 -c file > file.gz-c:将压缩的数据输出到屏幕上,可通过重定向来处理-#:#可取1~9,其中1速度最快,9压缩比最好

bzip2比gzip提供更好的压缩比

#压缩bzip2 file#解压缩bzip2 -d file.bz2 #读取压缩文件内容bzcat file.bz2#采用最佳压缩比,并保留源文件bzip2 -9 -c file > file.bz2#并保留源文件bzip -k file

2.打包

tar将一文件打包成一个,并没有压缩的功能,但通过参数可以联合gzip和bzip2一起进行压缩打包。

#压缩并打包tar -jcv -f file.tar.bz2 file-c(create):创建打包文件-v:查看打包过程-j:通过bzip2压缩和解压缩-f:文件名(-f选项建议单独写)-z:通过gzip压缩和解压缩#解压缩tar -jxv -f file-x:解打包,解压缩#查看打包文件中有哪些文件tar -t file.tar.bz2

再看几个选项

-C 目录 :解压缩时,可以选择特定目录-p:保留备份数据的原本属性,常用于备份重要的配置文件-P:保留绝对路径,即允许备份数据中含有根目录存在(重要!!!这个不要用,避免解压缩时覆盖源文件)-exclude=FILE : 在压缩过程中,不要将FILE打包

解释-p选项,如下:在选项中加入了-p选项,首先会保留源文件的属性,其次在解压缩打包文件时会去掉绝对路径,只保留相对路径,

[root@localhost tmp]# tar -jcv -f etc.tar.bz2  /etc/[root@localhost tmp]# tar -jxv etc.tar.bz2被解压缩后的文件路径变成了 /tmp/etc/...但如果加上-P选项,则会保留其源路径

仅解开单一文件的方法

[root@localhost ~]# tar -jcv -f etc.tar.bz2 /etc/#先找到我们需要的文件名,假设解压缩shadow文件[root@localhost ~]# tar -jtv -f etc.tar.bz2 | grep 'shadow'#将该文件解压缩[root@localhost ~]# tar -jxv -f etc.tar.bz2 etc/shadow(需要解压缩的文件名)

仅备份比某个时刻还要新的文件

#1.先找到比/etc/passwd还要新的文件[root@localhost ~]# find /etc/ -newer /etc/passwd #2.利用tar来进行打包
0 0
原创粉丝点击