tar命令
首先查看 ls /etc,我们可以看到,在该文件下有很多内容,今天就以该文件作为压缩和解压缩的文件例子。
接着,输入ls /tmp,查看该文件夹,该文件夹存在:
输入此命令,tar
c:创建新的tar文件
f:指定要处理的文件名
/tmp/etc-backup.tar:以etc-backup.tar这个名字存放在tmp文件夹下
/etc: 打包的是etc
接下来查看打包后的大小,可以看到下图的两个命令行,区别在是-l还是-lh,-lh是以M为单位或者更大的时候以G为单位。
接着进行打包压缩(gzip压缩)(更快):
z :用来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
.tar.gz双扩展名,用于区分是仅仅打包了还是打包且压缩了(gz表示gzip压缩)。
再来查看一下:
下一步进行解包:
c是打包,x是解包
-C是选择要将包解压在哪里
同样的,zxf和jxf分别对应上方两种不同的解压方式,sudo是权限不够的情况下添加的,如果不加sudo提示权限不够,再添加。
为方便还有以下命名方式:
-
.tgz等价于.tar.gz
-
.tbz与tb2等价于.tar.bz2
-
.taz等价于.tar.Z
-
.tlz等价于.tar.lzma
-
.txz等价于.tar.xz
以下是百度百科做总结的常用功能和选项:
功能
-
-c,--create 创建新的tar文件
-
-x,--extract,--get 解开tar文件
-
-t,--list 列出tar文件中包含的文件的信息
-
-r,--append 附加新的文件到tar文件中
-
-u,--update 用已打包的文件的较新版本更新tar文件
-
-A,--catenate,--concatenate 将tar文件作为一个整体追加到另一个tar文件中
-
-d,--diff,--compare 将文件系统里的文件和tar文件里的文件进行比较
-
--delete 删除tar文件里的文件。注意,这个功能不能用于已保存在磁带上的tar文件。
常用选项
-
-v,--verbose 列出每一步处理涉及的文件的信息,只用一个“v”时,仅列出文件名,使用两个“v”时,列出权限、所有者、大小、时间、文件名等信息。
-
-k,--keep-old-files 不覆盖文件系统上已有的文件。
-
-f,--file [主机名:]文件名 指定要处理的文件名。可以用“-”代表标准输出或标准输入。
-
-P,--absolute-names 使用绝对路径。
-
-j,--bzip2 调用bzip2执行压缩或解压缩。注意,由于部分老版本的tar使用-I实现本功能,因此,编写脚本时,最好使用--bzip2。
-
-J,--xz,--lzma 调用XZ Utils执行压缩或解压缩。依赖XZ Utils。
-
-z,--gzip,--gunzip,--ungzip 调用gzip执行压缩或解压缩。
-
-Z,--compress,--uncompress 调用compress执行压缩或解压缩。