1、命令格式

tar[必要参数][选择参数][文件]

2、命令功能

用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的

3、命令参数

必要参数:
-A 新增压缩文件到已存在的压缩
-B 设置区块大小
-c 建立新的压缩文件
-d 记录文件的差别
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性 可选参数:
-b 设置区块数目
-C 切换到指定目录
-f 指定压缩文件
--help 显示帮助信息
--version 显示版本信息

4、常见解包/压缩命令

(1)、.tar

解包:tar xvf FileName.tar

打包:tar cvf FileName.tar DirName

(2)、.tar.gz和.tgz

解包:tar zxvf FileName.tar.gz

压缩:tar zcvf FileName.tar.gz DirName

(3)、.tar.bz2

解压:tar jxvf FileName.tar.bz2

压缩:tar jcvf FileName.tar.bz2 DirName

(4)、.zip

解压:unzip FileName.zip

压缩:zip FileName.zip DirName

(5)、.rar

解压:rar x FileName.rar

压缩:rar a FileName.rar DirName

5、简单实例

(1)、将文件打包成不同格式

命令:

tar -cvf t1.tar tar_test/    (仅打包,不压缩!)
tar -zcvf t2.tar.gz tar_test/   (打包后,以 gzip 压缩)
tar -jcvf t3.tar.bz2 tar_test/   (打包后,以 bzip2 压缩 )

输出:

felix@felix-computer:~/test$ ls tar_test/
.txt .txt .txt .txt .txt .txt .txt
felix@felix-computer:~/test$ tar -cvf t1.tar tar_test/
tar_test/
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
felix@felix-computer:~/test$ ls
t1.tar tar_test
felix@felix-computer:~/test$ tar -zcvf t2.tar.gz tar_test/
tar_test/
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
felix@felix-computer:~/test$ ls
t1.tar t2.tar.gz tar_test
felix@felix-computer:~/test$ tar -jcvf t3.tar.bz2 tar_test/
tar_test/
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
felix@felix-computer:~/test$ ls
t1.tar t2.tar.gz t3.tar.bz2 tar_test
felix@felix-computer:~/test$

(2)、查看tar包内有哪些内容

命令:

tar -tvf t1.tar

tar -ztvf t2.tar.gz

tar -jtvf t3.tar.bz2

输出:

felix@felix-computer:~/test$ tar -tvf t1.tar
drwxr-xr-x felix/felix -- : tar_test/
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
felix@felix-computer:~/test$ tar -ztvf t2.tar.gz
drwxr-xr-x felix/felix -- : tar_test/
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
felix@felix-computer:~/test$ tar -jtvf t3.tar.bz2
drwxr-xr-x felix/felix -- : tar_test/
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
felix@felix-computer:~/test

(3)、打包的时候排除某些文件

命令:

tar --exclude tar_test/1* -zcvf tt.tar.gz tar_test/tar_test/  (使用--exclude)

输出:

felix@felix-computer:~/test$ tar --exclude tar_test/* -zcvf tt.tar.gz tar_test/tar_test/
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
tar_test/.txt
felix@felix-computer:~/test$ ls tar_test/
.txt .txt .txt .txt .txt .txt .txt
felix@felix-computer:~/test$ tar -ztvf tt.tar.gz
drwxr-xr-x felix/felix -- : tar_test/
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
-rw-r--r-- felix/felix -- : tar_test/.txt
felix@felix-computer:~/test$

linux系列(二十二):tar命令的更多相关文章

  1. linux系列(十二):more命令

    1.命令格式: more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file] 2.命令功能: more命令和cat的功能一样都是查看文件里的内容,但 ...

  2. webpack4 系列教程(十二):处理第三方JavaScript库

    教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十二):处理第三方 JavaScript 库>原文地址.或者来我的小站看更多内容:godbm ...

  3. 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环

    目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...

  4. CRL快速开发框架系列教程十二(MongoDB支持)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  5. Web 前端开发精华文章推荐(HTML5、CSS3、jQuery)【系列二十二】

    <Web 前端开发精华文章推荐>2014年第一期(总第二十二期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML ...

  6. OSGi 系列(十二)之 Http Service

    OSGi 系列(十二)之 Http Service 1. 原始的 HttpService (1) 新建 web-osgi 工程,目录结构如下: (2) HomeServlet package com. ...

  7. Java 设计模式系列(十二)策略模式(Strategy)

    Java 设计模式系列(十二)策略模式(Strategy) 策略模式属于对象的行为模式.其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以 ...

  8. hbase源码系列(十二)Get、Scan在服务端是如何处理

    hbase源码系列(十二)Get.Scan在服务端是如何处理?   继上一篇讲了Put和Delete之后,这一篇我们讲Get和Scan, 因为我发现这两个操作几乎是一样的过程,就像之前的Put和Del ...

  9. SQL注入之Sqli-labs系列第二十一关(基于复杂性的cookie POST报错注入)和二十二关(基于双引号的cookie POST报错注入)

    开始挑战第二十一关(Cookie Injection- Error Based- complex - string) 和二十二关(Cookie Injection- Error Based- Doub ...

  10. JAVA基础知识总结:一到二十二全部总结

    >一: 一.软件开发的常识 1.什么是软件? 一系列按照特定顺序组织起来的计算机数据或者指令 常见的软件: 系统软件:Windows\Mac OS \Linux 应用软件:QQ,一系列的播放器( ...

随机推荐

  1. ActiveMQ处理Message(String -javabean)

    一.ActiveMq想要实现必备的六要素(基于jms) //链接工厂.用于创建链接 private ConnectionFactory factory; //用于访问Mq的链接,由链接工厂创建 pri ...

  2. go的安装及环境变量设置

    1,go安装 https://studygolang.com/dl 官网下载,找自己需要的版本,傻瓜式安装 2.go的环境变量设置 windows下面要设置root和path root代表go安装路径 ...

  3. oracle 根据时间字段查询

    oracle 根据时间字段查询数据 ROWNUM 是对前面查询的记录做限制,比如查询的记录 > 2000 条,那么只取前面的 2000 条 ''' SELECT * FROM (SELECT C ...

  4. Android笔记(三十四) Android中线程之间的通信(六)Handle中的post()方法详解

    我们之前都是使用sendMessage()方法来发送消息,使用handleMessage来处理消息的,今天我们来看另外一种方法,先看代码: package cn.lixyz.handlertest; ...

  5. Manjaro安装mysql-5.7折腾小记

    安装前准备: 现在Arch官方源是MariaDB,所以得从mysql官网下载,地址:https://www.mysql.com/downloads/ 选择一个合适的版本下载: 下载下来先将压缩文件解压 ...

  6. Python安装package_name包

    官网:https://packaging.python.org/tutorials/installing-packages/ 首先查看已安装的包: 1. 命令行模式输入:pydoc modules 2 ...

  7. Linux系统用终端打开图片

    一.现在开发多数使用的系统都是linux系统,但有的时候会遇到一些比较麻烦的小问题,比如:在某个文件夹中存入大量的图片时,想要查看某张图片的时候,当你使用图形化显示的时候,就会很卡,所以在这里我针对于 ...

  8. rmi的调用

    在java8  121版本以前,只要这样就能任意代码 rmiTest.java import javax.naming.InitialContext; import javax.naming.Nami ...

  9. 12 复习 - webpack基本配置1

    1.npm包管理工具 npm init -y 如果创建的项目的根目录名称是中文或者包含中文,不能使用-y npm init 回车时要求你输入包的名称,自己手写项目名称,例test 2.新建src,di ...

  10. 浅析 array_map array_walk

    map    主要是为了得到你的回调函数处理后的新数组,要的是结果. walk   主要是对每个参数都使用一次你的回调函数,要的是处理的过程. walk   可以认为提供额外参数给回调函数,map不可 ...