0


Linux命令之打包tar

概述

tar

命令可用于将多个文件和目录一起打包成一个文件,但不压缩。如果要压缩,可以使用

gzip

bzip2

这样的压缩工具。

在这里插入图片描述

语法

该命令的语法如下:

tar[选项][文件]

该命令支持的选项有:
选项说明-c创建压缩文件-x解开压缩文件-t, --list列出压缩包中的文件列表-z用 gzip 格式压缩或解压-j用 bzip2 格式压缩或解压-v显示命令的执行过程-f目标文件名-p保留原始的权限与属性-P使用绝对路径来压缩-C解压包中所有文件到指定目录–delete从包中删除某个文件-r, --append将文件追加到包中-u, --update更新包中的文件

注:该命令常用的选项就是打包

-cvf

和解包

-xvf

,以及同其他压缩工具进行的压缩与解压缩(如使用

gzip

工具压缩是

-zcvf

zxvf

)。

使用

打包指定文件和目录【★★★★★】

如果想要将指定文件和目录进行打包,命令格式如下:

# 语法tar -cvf tar包名 待压缩的文件或目录
# 示例tar -cvf test.tar 

在这里插入图片描述

注:

-c

表示创建压缩文件;

-v

表示显示压缩过程;

-f

放在最后一位,表示要压缩的包的名称。

列出

tar

包中文件列表【★★★★★】

如果要查看压缩包中的文件列表,则可以使用

-t

选项:

# 语法tar -tvf tar包名
# 示例tar -tvf test.tar

在这里插入图片描述

追加文件到

tar

包中

如果要对已经创建的

tar

包追加文件,则可以通过

-r

选项:

# 语法tar -rvf tar包名 待追加文件
# 示例tar -rvf test.tar 123.log

在这里插入图片描述

解压包中文件到当前目录【★★★★★】

如果要解压包中原有的文件和目录到当前目录,则需要通过

-x

选项:

# 语法tar -xvf tar包名
# 示例tar -xvf test.tar

在这里插入图片描述

解压包中文件到指定目录【★★★★★】

如果要解压包中所有文件到指定目录,则需要使用

-C

选项:

# 语法tar -xvf tar包名 -C 指定解压目录
# 示例tar -xvf test.tar -C 

在这里插入图片描述

使用

gzip

压缩打包【★★★★★】

tar

只具有打包的效果,但并不具有压缩的能力,而如果要压缩可以使用

gzip

工具对其压缩,即使用

-z

选项。这种

tar

文件的扩展名是

.tar.gz

.tgz

# 语法tar -zcvf 压缩包名 待压缩文件或目录
# 示例tar -zcvf test.tar.gz 123.log inputrc.sh log.txt test/

在这里插入图片描述

注:如果要解压缩则使用

tar -zxvf 压缩包名

命令。

在这里插入图片描述

使用

bzip2

压缩打包

如果使用

bzip2

工具对其压缩,即使用

-j

选项。这种

tar

文件的扩展名是

.tar.bz2

.tbz

# 语法tar -jcvf 压缩包名 待压缩文件或目录
# 示例tar -jcvf test.tar.bz2 123.log inputrc.sh log.txt test/

在这里插入图片描述

注:如果要解压缩则使用

tar -jxvf 压缩包名

命令。

在这里插入图片描述

使用绝对路径

如果我们仍然用上面的选项对绝对路径进行打包。就会报错:

tar: Removing leading /' from member names

在这里插入图片描述
但其实压缩包是生成了的,但为了避免出现这个问题,我们可以加上

-P

选项,就能使用绝对路径来压缩打包了。

# 语法,注意 P 要在 f 的前面,因为 -f 选项跟文件名tar -zcvPf 压缩包名 待压缩文件的绝对路径
# 示例tar -zcvPf /home/zhangsan/hello.txt.tar.gz /home/zhangsan/hello.txt

在这里插入图片描述

标签: linux bash 运维

本文转载自: https://blog.csdn.net/cnds123321/article/details/124932309
版权归原作者 二木成林 所有, 如有侵权,请联系我们删除。

“Linux命令之打包tar”的评论:

还没有评论