目录
通过man tar 查看该命令的解释 tar - an archiving utility
Linux中的tar,是一个归档工具,可以将一个或多个文件打包,配合其提供的选项,可以实现压缩功能。
-c Create a new archive,Arguments supply the names of the files to be archived. 创建一个新的归档文件
-v Verbosely list files processed 列出要处理的文件
-f specify archive file 指定归档后的文件名
-x Extract files from an archive 提取文件
-r Append files to the end of an archive. 追加文件到归档文件的末尾
-C Change to DIR before performing any operations. 提取文件时使用,提取文件到指定的目录下
-z Filter the archive through gzip 归档或提取文件的同时进行压缩或解压缩,使用gzip压缩、ungzip解压缩
-p extract information about file permissions (default for superuser) 提取文件时,保留文件权限
-j Filter the archive through bzip2(1).
cvf
rvf
tvf
zpcvf
jpcvf
xvf
xvf -C /dir/name
zpxvf
jpxvf
将 /etc/ /var/log/ 目录下的文件打包为 arch.tar
tar -cvf arch.tar /etc/ /var/log/
如果在打包后,忘记将/tmp/1.txt 打包,可以向已经打包好的文件中追加
tar -rvf arch.tar /tmp/1.txt
tar -tvf arch.tar
如果tar包中文件过多,可以配合more命令
tar -tvf arch.tar | more
细心的朋友,会发现,我们打包的是 /etc/中的文件,但是使用tvf查看时,最前面的 / 消失了!
可以思考下tar命令为什么这么做,然后在文章的下方留言,一起交流讨论!
tar -zpcvf arch.tar.gz /etc/ /var/log/
此时可以通过 ls -lh 查看 arch.tar 和 arch.tar.gz 文件大小的差距,应该会有明细的大小差距。
tar -jpcvf arch.tar.bz2 /etc/ /var/log/
通过 ls -lh 查看 arch.tar.bz2 和 arch.tar.gz 再比较一下文件的大小,应该arch.tar.bz2文件更小。
tar -xvf arch.tar
tar -xvf arch.tar.gz
tar -xvf arch.tar.bz2
其实不管是普通的tar包,还是压缩的gz 、bz2 包, 使用xvf选项都可以将文件提取出来。
当然你使用 zpxvf 提起gz文件, jpxvf提取bz2文件,也是可以的
将打包的文件提起到/tmp 目录下
tar -xvf arch.tar.bz2 -C /tmp/