本文由秀依林枫提供友情赞助,首发于烂泥行天下

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

tar –help

man tar

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是可有可无。

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

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

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

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

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

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

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

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

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

tar -tvf test.tar.gz

通过上面这张截图,我们可以很清楚的看出。我们现在已经把当前目录下的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

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

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

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

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

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

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

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

tar -tvf ilanni.tar.gz

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

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

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

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

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

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

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

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

烂泥:CentOS命令学习之tar打包与解压的更多相关文章

  1. linux基础命令学习 (七)压缩解压

    一.tar tar主要用来压缩和解压文件 语法: tar [主选项+辅选项] 文件或者目录 主选项: c 创建新的档案文件.如果用户想备份一个目录或是一些文件,就要选择这个选项.相当于打包. x 从档 ...

  2. linux tar 打包 压缩 解压

    dir:  tong 打包/压缩:tar zvf tong.rar tong        tar -czf tong.tar.gz tong 解压缩:tar xvf tong.rar 查看压缩包里的 ...

  3. Linux命令(十五) 打包或解压文件 tar

    目录 1.命令简介 2.常用参数介绍 3.实例 4.直达底部 命令简介 tar 命令用于将文件打包或解压,扩展名一般为 ".tar" ,指定特定的参数可以调用 gzip 或 bzi ...

  4. linux tar命令 压缩、打包、解压 详解

    linux tar命令 压缩.打包.解压 详解 1.常用压缩命令 tar –czvf 压缩后的文件.tar.gz 要压缩的文件 2.常用解压命令 tar –xzvf 解压后的文件.tar.gz [要解 ...

  5. tar.xz如何解压:linux和windows下tar.xz解压命令介绍

    在linux下怎么解压和压缩tar.xz文件? (本文由www.169it.com搜集整理) 在linux下解压tar.xz文件步骤 1 2 # xz -d ***.tar.xz  //先解压xz # ...

  6. 011 Linux 打包与解压 tar

    01 压缩.打包命令有哪些? Linux上有着各种压缩.打包的工具:tar.gzip.zip.7z,而 tar 应该算是 Linux 官宣的压缩工具了. tar 的核心压缩工具其实是 gzip,在其上 ...

  7. .tar.bz2文件解压命令

    从网络上下载到的源码包, 最常见的是 .tar.gz 包, 还有一部分是 .tar.bz2包 要解压很简单 : .tar.gz     格式解压为          tar   -zxvf   xx. ...

  8. tar.gz tar.bz2的解压命令

    .tar.gz     格式解压为          tar   -zxvf   xx.tar.gz .tar.bz2   格式解压为          tar   -jxvf    xx.tar.b ...

  9. linux常用命令---打包压缩解压

    打包压缩解压

随机推荐

  1. 2016 大连网赛---Different GCD Subarray Query(GCD离散+树状数组)

    题目链接 http://acm.split.hdu.edu.cn/showproblem.php?pid=5869 Problem Description This is a simple probl ...

  2. InfluxDB学习之InfluxDB的HTTP API写入操作

    HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式.     在InfluxDB学习的上一篇文章:InfluxDB学习之InfluxDB ...

  3. maven 跳过测试 打包 及上传命令

    [main] ERROR org.apache.maven.cli.MavenCli - Failed to execute goal org.apache.maven.plugins:maven-s ...

  4. spring amqp rabbitmq fanout配置

    基于spring amqp rabbitmq fanout配置如下: 发布端 <rabbit:connection-factory id="rabbitConnectionFactor ...

  5. WinForm 窗体应用程序(初步)之一

    学习制作一个WinForm程序,有两样东西是需要首先掌握的.第一部分,我们称之为属性面板.无论是窗体还是控件,都有着自己的属性面板.第二部分,则是我们称之为控件的东西. 我们先来讨论一下属性面板.新建 ...

  6. emberjs学习一(环境和第一个例子)

    code { margin: 0; padding: 0; white-space: pre; border: none; background: transparent; } code, pre t ...

  7. 一个类似backbone路由的纯净route ( 前端路由 客户端路由 backbone路由 )

    大家用backbone.angular,可能都习惯了内置的路由,这两个框架的路由都是非常优秀的,强大而简单. 客户端(浏览器)路由原理其实比较简单,其实就是监听hash的变化. 在之前的架构探讨中,说 ...

  8. 每日一博 | 用 Ionic2 创建 App 启动页滑动欢迎界面

    原文  https://my.oschina.net/qinphil/blog/777787 效果如下,图片来自网络 本文例子和上图稍有不同,主要功能如下: 每滑动一下展示一张全屏图片: 滑动到最后一 ...

  9. sharepoint多个NLB的web前段如何进行文件同步?

    大家都知道,sharepoint2010服务器场可能有2个或2个以上的web服务器做NLB,有个时候牵涉到上传文件到文件夹(说到这里,有人会说全部以二进制文件保存到文档库啊,但是有些情况不允许的,比如 ...

  10. SqlIte数据库并发性

    把遇到的一些小问题都记下来,告诉自己,一些小细节会铸成打错的 今天没事复习以前的知识,用sqlite做数据库,发现修改数据的时候等好久才有反应,而且还失败,可是过一会之后又会好,好了以后又是一样,种以 ...