tar

GNU `tar' saves many files together into a single tape or disk archive, and can restore individual files from the archive.

tar:用于压缩和解压缩文件;

格式:tar [OPTION...] [FILE]...

# tar命令常用的功能
# 以下功能是独立的, 一次只能使用一个
- -c: 创建新的tar文件;
- -x: 解开tar文件;
- -t: 列出tar文件中含的文件的信息;
- -r: 附加新的文件到tar文件中; # tar命令常用的参数
- -z: 使用gzip进行解压缩
- -j: 使用bzip2进行解压缩
- -Z: 使用compress进行解压缩
- -v: 显示解压缩执行过程
- -f: 指定要处理的文件名 # 压缩
- tar -cvf xxx.tar /data # 仅对 data 目录打包不进行压缩
- tar -zcvf xxx.tar /data # 对 data 目录打包并以 tar.gz 方式压缩
- tar -jcvf xxx.tar /data # 对 data 目录打包并以 tar.bz2 方式压缩 # 解压
- tar -xvf xxx.tar # 解包
- tar -zxvf xxx.tar.gz # 解压 tar.gz 格式压缩包
- tar -jxvf xxx.tar.bz2 # 解压 tar.bz2 格式压缩包
- tat -zxvf xxx.tar.gz etc/passwd # 解压 tar.gz 格式压缩包, 直解压部分文件夹

常用参数:

OPTIONS 意义
-A 新增文件到以存在的备份文件
-B 设置区块大小
-c 建立新的备份文件
-C <目录> 仅压缩指定目录里的内容或解压缩到指定目录
-d 记录文件的差别
-x 从归档文件中提取文件
-t 列出备份文件的内容
-z 通过gzip指令压缩/解压缩文件,文件名最好为*.tar.gz
-Z 通过compress指令处理备份文件
-f<备份文件> 指定备份文件
-v 显示指令执行过程
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-j 通过bzip2指令压缩/解压缩文件,文件名最好为*.tar.bz2
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-w 确认压缩文件的正确性
-p 保留原来的文件权限与属性
-P 使用文件名的绝对路径,不移除文件名称前的“/”号
-N <日期格式> 只将较指定日期更新的文件保存到备份文件里
-- -exclude=<范本样式> 排除符合范本样式的文件
-- -remove-files 归档/压缩之后删除源文件

参考案例:

压缩

  • 使用 gzip 压缩格式对目录压缩 .tar.gz
# 使用gzip压缩格式对某个目录进行打包操作, 显示压缩过程, 压缩包规范后缀为.tar.gz
# 格式: tar -zcvf 压缩名称.tar.gz 文件目录
# 格式: tar zcvf 压缩名称.tar.gz 文件目录
$ tar -zcvf backup1.tar.gz /etc
......
/etc/selinux/targeted/active/modules/100/passenger/cil
/etc/selinux/targeted/active/modules/100/passenger/hll
/etc/selinux/targeted/active/modules/100/passenger/lang_ext
/etc/selinux/targeted/active/modules/100/pcmcia/
......
  • 使用 bzip2 压缩格式对目录压缩 .tar.bz2
# 使用bzip2压缩格式对某个目录进行打包操作, 显示压缩过程, 压缩包规范后缀为.tar.bz2
# 格式: tar -jcvf 压缩名称.tar.bz2 /etc
$ tar -jcvf backup2.tar.bz2 /etc # 问题描述:
## 使用 bz2 需要安装 bzip2 否则会出现 `tar (child):bzip2: Cannot exec :Nosuch of file or directory` 错误
# 解决方法:
## $ yum install -y bzip2 # 安装 bzip2 即可解决
  • 对当前目录的 .cfg 后缀文件进行打包,不进行压缩
# 将当前工作目录内所有以.cfg为后缀的文件打包, 不进行压缩
$ tar -cvf backup3.tar *.cfg
  • 对当前目录的 .cfg 后缀文件进行打包,不进行压缩,并删除原始文件
$ tar cvf backup4.tar *.cfg --remove-files

解压

  • .tar 格式压缩文件解压,解压到当前工作目录
$ tar -xvf backup3.tar
  • tar.gz 格式压缩文件解压,解压到当前工作目录
$ tar -zxvf backup1.tar.gz
  • tar.bz2 格式压缩文件解压,解压到当前工作目录
$ tar -jxvf backup2.tar.bz2

# 问题描述:
## 在进行 backup2.tar.bz2 解压时出现: `tar (child): bzip2: Cannot exec: No such file or directory` 错误
# 问题解决:
## $ yum install -y bzip2 # 安装 bzip2 即可解决
  • tar.gz 格式压缩文件解压,解压到 /etc 工作目录
$ tar -zxvf backup1.tar.gz -C /etc

其它操作

  • 查看压缩包内文件信息(无需解压)
$ tar -tvf backup4.tar

Linux命令篇 - tar 命令的更多相关文章

  1. linux基础-第八单元 正文处理命令及tar命令

    第八单元 正文处理命令及tar命令 使用cat命令进行文件的纵向合并 两种文件的纵向合并方法 归档文件和归档技术 归档的目的 什么是归档 tar命令的功能 tar命令的常用选项 使用tar命令创建.查 ...

  2. linux中的 tar命令的 -C 参数,以及其它一些参数(转)

    linux中的 tar命令的 -C 参数,以及其它一些参数 复制源:http://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.htmltar命令 ...

  3. Linux压缩打包tar命令总结

      命令简介   在Linux系统的维护.管理中,tar命令是一个使用频率很高的命令,tar命令的功能主要是将众多文件打包成一个tar文件并压缩,并且能保持文件的权限属性.tar其实最开始是用来做磁带 ...

  4. linux中的 tar命令的 -C 参数,以及其它一些参数

    tar命令的-C参数    $ tar -cvf file2.tar /home/usr2/file2 tar: Removing leading '/' from members names hom ...

  5. Linux基础(3)- 正文处理命令及tar命令、vi编辑器、硬盘分区、格式化及文件系统的管理和软连接、硬连接

    一.正文处理命令及tar命令 1)  将用户信息数据库文件和组信息数据库文件纵向合并为一个文件1.txt(覆盖) 2)  将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件2.txt(追加) ...

  6. Linux命令学习-tar命令

    Linux中,tar命令的全称是tape archive,主要作用是压缩和解压文件. 参数说明: -c 创建新的压缩档案 -x 解压档案 -t 列出压缩档案的内容 -z 使用gzip来解压和压缩,文件 ...

  7. linux下使用tar命令

    解压语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项: c 创建新的档案文件.如果用户想备份一个目录或 ...

  8. linux下使用tar命令(转)

    转至: http://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.html 解压语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主 ...

  9. linux下用tar命令将当前目录下文件按子目录压缩归档

    作者:iamlaosong 日常工作中,我们常常需要用tar命令将历史文件压缩归档,再删除源文件,以便节省空间.如果压缩归档成一个文件,就比较简单,用一条命令即可,如命令:tar -czf bak20 ...

  10. Linux使用快捷键,who命令,rm命令,ps命令,cd,命令kill命令,find命令,grep命令,tar命令(gz、tar、bz2),用户管理,vim配置的一部分,相关命令

    1.进入Ubuntu开场后的终端窗口的快捷键是:           ctrl + alt+t:通过这个命令能够打开终端. ctrl + alt+t:通过这个命令能够打开终端. 再开一个tab选项卡式 ...

随机推荐

  1. 让 Serverless 更普惠,阿里云函数计算 FC 宣布全面降价,最大幅度达 37.5%

    11月5日,2022 杭州 · 云栖大会上,阿里云宣布函数计算 FC 开启全面降价,vCPU 单价降幅** 11%,其他的各个独立计费项最高降幅达 37.5%**. 本次云栖大会上,阿里云智能总裁张建 ...

  2. Java开发学习(四十四)----MyBatisPlus查询语句之查询条件

    1.查询条件 前面我们只使用了lt()和gt(),除了这两个方法外,MybatisPlus还封装了很多条件对应的方法. MybatisPlus的查询条件有很多: 范围匹配(> . = .betw ...

  3. vuex环境配置及使用

    vuex环境搭建 1.下载vuex,如果你是开发Vue2,请下载vuex3版本 npm i vuex@3 2.搭建vuex的环境配置 ​ 创建 src/state/index.js 文件 //导入Vu ...

  4. 如何使用C#在Excel中插入分页符

    在日常办公中,我们经常会用到Excel文档来帮助我们整理数据.为了方便打印Excel工作表,我们可以在Excel中插入分页符.各种处理软件一般都会自动按照用户所设置页面的大小自动进行分页,以美化文档的 ...

  5. 1.3 Apache Hadoop的重要组成-hadoop-最全最完整的保姆级的java大数据学习资料

    目录 1.3 Apache Hadoop的重要组成 1.3 Apache Hadoop的重要组成 Hadoop=HDFS(分布式文件系统)+MapReduce(分布式计算框架)+Yarn(资源协调框架 ...

  6. 【每日一题】【map、数组、二维数组排序、静态函数和库函数】2022年2月24日-NC97 字符串出现次数的TopK问题

    描述给定一个字符串数组,再给定整数 k ,请返回出现次数前k名的字符串和对应的次数.返回的答案应该按字符串出现频率由高到低排序.如果不同的字符串有相同出现频率,按字典序排序.对于两个字符串,大小关系取 ...

  7. 【每日一题】【二分mid&贪心】2022年2月8日-NC163 最长上升子序列(一)

    1.描述给定一个长度为 n 的数组 arr,求它的最长严格上升子序列的长度.所谓子序列,指一个数组删掉一些数(也可以不删)之后,形成的新数组.例如 [1,5,3,7,3] 数组,其子序列有:[1,3, ...

  8. 【实时数仓】Day06-数据可视化接口:接口介绍、Sugar大屏、成交金额、不同维度交易额(品牌、品类、商品spu)、分省的热力图 、新老顾客流量统计、字符云

    一.数据可视化接口介绍 1.设计思路 后把轻度聚合的结果保存到 ClickHouse 中后,提供即时的查询.统计.分析 展现形式:用于数据分析的BI工具[商业智能(Business Intellige ...

  9. 回溯法求解n皇后问题(复习)

    回溯法 回溯法是最常用的解题方法,有"通用的解题法"之称.当要解决的问题有若干可行解时,则可以在包含问题所有解的空间树中,按深度优先的策略,从根节点出发搜索解空间树.算法搜索至解空 ...

  10. java中加号的用法

    注意java中+号的使用 public class Add { public static void main(String[] args) { System.out.println(100+80); ...