常用命令
tar是一个用于文件归档和压缩的工具,其参数可以根据需要进行选择。以下是一些常用的tar命令极其参数
-c:创建一个新的压缩文件(归档文件)。
-x:从压缩文件(归档文件)中释放文件
-f:指定压缩文件的名称。
-z:使用gzip进行压缩。
-j:使用bz2进行压缩
-v:在压缩时显示过程信息(verbose模式)。
-r:将文件追加到压缩文件(归档文件)的末尾
-t:列出压缩文件(归档文件)的内容
-u:更新文件,用新增的文件取代原归档文件
这些命令可以单独使用,也可以组合使用,下面举一些例子。
归档压缩
将当前目录下的所有.png文件归档并压缩,名称为image.tar.gz:
tar -cf image.tar.gz *.png
向image.tar.gz压缩文件中追加当前目录下的.jpg文件:
tar -rf image.tar.gz *.jpg
上面两项只显示压缩结果,并没有显示过程,在归档压缩时显示被压缩的文件:
tar -rvf image.tar.gz *.gif
查看压缩文件的内容:
tar -tf image.tar.gz
分别使用gzip和bz2压缩当前目录下的所有文件:
tar -cvf /www/image/tar/image1.tar.gz *
tar -zcvf /www/image/tar/image2.tar.gz *
tar -jcvf /www/image/tar/image3.tar.gz *
对比这些文件占用空间的大小发现,使用gzip和bz2压缩的文件,确实小一些
释放解压缩
解压image.tar.gz文件到当前目录:
tar -xvf image.tar.gz
注意:解压文件时,由于压缩技术存在不同,若使用bz2压缩的文件,用gzip解压缩会报错,反之也会报错。不确定压缩文件时用了什么,解压文件直接用-xf即可,无需多加-z或-j等参数。
压缩时排除文件
使用tar归档压缩文件的时候排除某些文件或目录,一种笨方法是将不需要的文件或目录移动到其它目录中,再将剩余的文件归档压缩。
tar提供了--exclude选项来排除不需要归档压缩的文件或目录,如下所示:
tar --exclude="File_to_exclude" [options] [archive_name] [path]
归档压缩当前目录下除uploadfile文件夹以外的所有文件:
tar -exclude='uploadfile' -zcvf project.tar.gz *
使用绝对路径排除文件:
cd /www/project
tar --exclude='/www/project/form/caches/log' -zcvf form.tar.gz form
排除多个文件和目录:
tar --exclude='images' --exclude='uploadfile' --exclude='bbs' --warning=no-file-changed -zcvf project.tar.gz *
按扩展名排除:
tar --exclude='*.wav' -zcvf mp3.tar.gz *
下一篇:最后一页