烂泥:CentOS命令学习之tar打包与解压

简介:

tar命令一般是做打包和解压使用,有关tar命令的使用。我们可以通过帮助文档进行查看,如下:

tar –help

man tar

clip_image001

clip_image002

tar有几个比较重要的参数如下:

-c 创建一个新归档

-f 当与-c选项一起使用时,创建的tar文件使用该选项的指定的文件名;当与-x选项一起使用时,则解包该选项指定的归档。该参数一定放在所有参数的最后面

-t 显示tar文件中的文件列表

-v 显示归档或解档的进度

-z 使用gzip来压缩tar文件

-j 使用bzip2来压缩tar文件

-x 解压tar压缩包,

-C 解压到新的目录,该命令是大写。

-p 保留备份数据的原本权限和属性

以上命令需要特别注意-c、-t、-x不能在一个命令中同时出现

现在我们先来讲解tar打包的使用方法。注意在此我们全部以gzip格式的文件为例,如果是bzip文件把参数-z修改为-j即可。

将ilanni目录进行打包,打包后的文件为ilanni.tar.gz,并将打包后存放到/testtar目录下:

tar -cvzf /testtar/ilanni.tar.gz ilanni

或者

tar -czf /testtar/ilanni.tar.gz ilanni

其中参数-v是可有可无。

clip_image003

clip_image004

通过上述两张图片我们可以看出,已经打包成功。刚刚是把本地的文件打包到其他目录,如果把A目录下的文件打包到B目录如下:

tar -czf /testtar/tar.tar.gz /tar

clip_image005

该条命令的作用是把/tar目录进行打包,打包完成后以tar.tar.gz命名文件存放到/testtar目录下。

以上都是在同一台服务器上进行的,如果我想把本地的文件打包后,上传到另外一台服务器上。操作如下:

ssh root@192.168.1.102 tar -czf /ks/tar.tar.gz /tar/

该条命令的意思是把/tar目录打包到192.168.1.102服务器的/ks目录下。

clip_image006

clip_image007

通过上述两张截图,我们可以看到已经成功的把/tar打包到192.168.1.102服务器的/ks目录下。

上面是对目录进行打包,如果是对单独的文件进行打包也很简单。我们来测试下,如果两个文件在不同的目录,打包到一个压缩包中。如下

tar -zvcf test.tar.gz ./tftp.txt ./ilanni/iso.txt

tar -tvf test.tar.gz

clip_image008

通过上面这张截图,我们可以很清楚的看出。我们现在已经把当前目录下的tftp.txt文件和该目录下的ilanni目录下的iso.txt文件打包到同一个压缩包中。

以上是有关tar打包的相关使用方法。下面我们来介绍使用tar解压压缩包的方法。按照网络上的说法对于不同的压缩包比如gzip压缩包和bzip2压缩包,我们再解压时,要使用不同的命令。

对于gzip压缩包,使用tar –zxf ilanni.tar.gz解压。对于bzip压缩包,使用tar –jxf ks.bz2解压。

其实根本没有那个必要,只要是tar压缩包,我们直接使用tar –xf进行解压即可。如下:

tar -xf ilanni.tar.gz

tar -xf ks.bz2

clip_image009

通过上图,我们可以看到只要是tar压缩包的解压我们就可以直接使用tar -xf进行解压。

以上我们是把压缩包解压到同一目录下,下面我们来测试下把压缩包解压到另外一个目录。如下:

tar -xf ilanni.tar.gz -C /testtar/

该条命令的意思是把当前目录下ilanni.tar.gz解压到/testtar/目录下。

clip_image010

通过上图,我们可以看到ilanni.tar.gz已经成功的解压到/testtar/目录下。

以上我们解压的是整个目录,假如说这个压缩包是一个文件夹的话,而里面又有很多的文件,我们现在只想把其中的一个文件解压出来。操作如下:

先查看该压缩包的目录结构,使用如下命令:

tar -tvf ilanni.tar.gz

clip_image011

注意图中***部分标记出来的ilanni/tftp.txt,我们现在就是要把tftp.txt解压出来,其他的文件不进行解压。而且这个路径也要记录下,等会解压要使用到。

现在开始解压,使用如下命令:

tar -xf ilanni.tar.gz ilanni/tftp.txt

clip_image012

可以看到现在已经把tftp.txt文件解压出来了。

如果多个文件,但又不是全部解压。可以使用类型的命令。如下:

tar -xf ilanni.tar.gz ilanni/{tftp.txt,iso.txt}

clip_image013

通过上图可以看到,我们现在已经只把tftp.txt和iso.txt。两个文件解压出来了。

到此有关tar的基本使用介绍结束。


本文转自 烂泥行天下 51CTO博客,原文链接:http://blog.51cto.com/ilanni/1555436

相关文章
|
25天前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
53 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
25天前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
79 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
10天前
|
安全 Linux 网络安全
centos7中firewall防火墙的常用命令总结
以上命令集覆盖了 `firewalld`的基本操作,是维护CentOS 7系统安全不可或缺的工具。对于更高级的配置需求或遇到特定问题
10 3
|
22天前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
158 3
|
2月前
|
Linux
CentOS7系统命令学习笔记(二)
CentOS7系统命令学习笔记(二)
|
2月前
|
Linux Shell API
CentOS7系统命令学习笔记(三)
CentOS7系统命令学习笔记(三)
|
28天前
|
Linux 编译器 C语言
./build.sh:行1: g++: 未找到命令的错误问题在centos操作系统下面如何解决
通过上述步骤,您应该能够有效地解决CentOS系统中 `g++: 未找到命令`的错误。确保软件开发环境配置得当,对于顺利执行编译脚本和日常开发工作至关重要。如果问题依然存在,考虑检查脚本内的命令路径引用是否正确,或进一步排查系统配置问题。
46 0
|
Ubuntu JavaScript Linux
centos7.4常用命令
centos7.4常用命令
217 0
|
Linux
CentOS 常用命令
centos,linux 常用的命令备忘。
1106 0