tar命令用法

操作Linux服务器,tar命令是常用命令之一,总结一下常用的用法,以备不时之需。

语法

tar [-cxtzjvfpPN] 压缩后的文件 源文件

参数解释

-c :建立一个压缩文件的参数指令

-x :解开一个压缩文件的参数指令

-t :查看 tarfile 里面的文件

-z :同时使用gzip压缩

-j :同时使用 bzip2 压缩

-v :压缩的过程中显示文件

-f :指定 tar 文件的文件名 (此参数的后面必须直接跟上文件名)

-p :使用原文件的原来属性

-P :使用绝对路径

-N :日期(yyyy/mm/dd)后的才会被打包

--exclude FILE:在压缩的过程中,排除不需要打包的文件

范例

把/home/web/下的文件打包为web.tar

tar -cvf web.tar /home/web/

注意:tar默认使用的是相对路径,在范例中,我们使用了绝对路径,会有以下的提示:

tar: Removing leading `/' from member names

用Gzip压缩/home/web/下的文件压缩为web.tar.gz

cd /home

tar -czvf web.tar.gz web/

将本目录下的所有文件压缩打包为web.tar.gz,注意最后的一个.,表示本目录。

tar -czvf web.tar.gz .

查看本目录下web.tar.gz文件的内容

tar -tzvf web.tar.gz

将/home目录下的所有文件压缩,排除web2目录

tar -czvf web.tar.gz /home - exclude /home/web2

将web.tar.gz解压到本目录

tar -xzvf web.tar.gz

把/home目录下2014年3月1日后的文件压缩打包

tar -N '2014/03/01' -zcvf home.tar.gz /home

注意,虽然2014年3月1日之前的文件不会被打包,但是文件夹的目录还是打包进去了的。