一.tar
打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。
linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩。
-v 显示操作过程
-f 指定压缩文件
-c 建立新的压缩文件
-x 从压缩的文件中提取文件
解包:tar -xvf FileName.tar
打包:tar -cvf 打包的文件.tar 目录名
————————————————————————————————————
精进
-z 支持gzip解压文件
tar -zcvf log.tar.gz log2012.log 打包后,以gzip压缩
-j 支持bzip2解压文件
tar -jcvf log.tar.bz2 log2012.log 打包后,以bzip2压缩
-t 显示压缩文件的内容
tar -ztvf log.tar.gz
由于我们使用 gzip 压缩的log.tar.gz,所以要查阅log.tar.gz包内的文件时,就得要加上 z 这个参数
将tar包解压缩
tar -zxvf /opt/soft/test/log.tar.gz
二.gzip
gzip命令对文本文件有60%~70%的压缩率
-d或–decompress或----uncompress 解开压缩文件
-v或–verbose 显示指令执行过程。
把当前目录下每个文件都压缩成.gz文件
gzip *
把当前目录下每个压缩文件解压并列出详细的信息
gzip -dv *
显示每个压缩文件的信息,不解压
gzip -l *
压缩一个tar备份文件,此时压缩文件的扩展名为.tar.gz
gzip -r log.tar
精进
-d或–decompress或----uncompress 解开压缩文件
递归的压缩目录
gzip -rv test6
这样,所有test6下面的文件都变成了*.gz,目录依然存在只是目录里面的文件相应变成了*.gz.
递归地解压目录
gzip -dr test6