计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。
tar使用格式:
tar [参数] 打包文件名 文件
tar命令很特殊,其参数前面可以使用“-”,也可以不使用。
常用参数:
参数含义-c生成档案文件,创建打包文件-v列出归档解档的详细过程,显示进度-f指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后-t列出档案中包含的文件-x解开档案文件注意:除了f需要放在参数的最后,其它参数的顺序任意。
常用命令:
打包当前目录所有文件tar -cvf xxx.tar *
以.txt结尾的文件tar -cvf xxx.tar *.txt
打包指定目录或文件tar -cvf xxx.tar my-file my-dir
解包解包到当前目录:tar -xvf xxx.tar
解包到指定目录:tar -xvf xxx.tar -C my-dir (需要先创建my-dir目录)
tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。也会见到缩写的.tgz这种扩展名。
gzip使用格式如下:
gzip [选项] 被压缩文件常用选项:
选项含义无压缩gzip xxx.tar-d解压gzip -d xxx.tar.gz-r压缩所有子目录tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项-z可以调用gzip实现压缩的功能,最终实行一个先打包后压缩的过程。
-z :指定压缩包的格式为 xxx.tar.gz
tar压缩:tar zcvf xxx.tar.gz 文件1 文件2 ...
tar解压:tar zxvf xxx.tar.gz
解压到指定目录:tar zxvf xxx.tar.gz -C target_dir/ (大写字母“C”)
tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.bz2。
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar -jcvf 压缩包包名 文件1 文件2...(例:tar jcvf bak.tar.bz2 *.c)
解压用法:tar -jxvf 压缩包包名 (例:tar jxvf bak.tar.bz2)
通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
文件:zip bak * 当前目录所有文件,也可以指定文件
文件夹:zip -r bak * 当前目录所有文件&目录递归
解压文件:unzip -d 解压后目录文件 压缩文件
解压到指定目录:unzip -d ./target_dir bak.zip
解压到当前目录:unzip bak.zip