操作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日之前的文件不会被打包,但是文件夹的目录还是打包进去了的。