linux 常见压缩、归档工具

创建压缩工具

压缩工具 后缀 描述
compress/uncompress .Z 早期工具,现在不常见了
gzip/gunzip .gz 进几年比较火的工具
bzip2/bunzip2 .bz2 gzip升级版,压缩效果并不理想
xz/unxz .xz   目前压缩最好用的工具
zip .zip 可实现归档压缩,多平台支持
tar .tar 归档工具

gzip

    格式:

gzip [OPTION......] [FILE......]
-d: 解压缩,相当于gunzip;
-*: 指定压缩比,默认是6,数字越大压缩比越大(1-9);
-c:将压缩结果标准输出为某个文件*.gz;

  练习:

# 源文件
-rw-r--r-- 1 root root 819K 1月 2 17:28 test.log # 不指定选项压缩默认删除原文件
]# gzip test.log
-rw-r--r-- 1 root root 138K 1月 2 17:28 test.log.gz # 指定压缩比并指定标准输出文件
]# gzip -9 -c test.log > test.log.gz
-rw-r--r-- 1 root root 137K 1月 2 17:56 test.log.gz # 解压缩
]# gzip -d test.log.gz
]# gunzip test.log.gz #不解压查看文件
]# zcat test.log.gz

bzip2

格式:

bzip2 [OPTION......] [FILE......]
-d:解压缩
-*:指定压缩比,默认是6,数字越大压缩比越大(1-9);
-k:保留原文件

练习:

# 不加任何选项默认删除原文件
]# bzip2 test.log
-rw-r--r-- 1 root root 32K 1月 2 17:28 test.log.bz2 # 指定压缩比并保留源文件
]# bzip2 -9 -k test.log
-rw-r--r-- 1 root root 32K 1月 2 17:28 test.log.bz2 # 解压
]# bunzip2 test.log.bz2
]# bzip2 -d test.log.bz2 # 查看归档文件
]# bzcat test.log.bz2

xz

格式:

xz  [OPTION......] [FILE......]
-d:解压缩
-*:指定压缩比,默认是6,数字越大压缩比越大(1-9);
-k:保留原文件

练习:

# 不加任何选项默认删除原文件
]# xz test.log
-rw-r--r-- 1 root root 18K 1月 2 17:28 test.log.xz # 指定压缩比并保留源文件
]# xz -9 -k test.log
-rw-r--r-- 1 root root 18K 1月 2 17:28 test.log.xz # 解压
]# unxz test.log.xz
]# xz -d test.log.xz # 查看归档文件
]# xzcat test.log.xz

tar

格式:

tar [OPTION......] [FILE......]
-c: 建立压缩档案
-x: 解压
-t: 查看内容
-r: 向压缩归档文件末尾追加文件
-f :使用档名
-u:更新原压缩包中的文件
-z:有gzip属性的
-j: 有bz2属性的
-J: 有xz属性
-Z:有compress属性的
-v:显示所有过程
-C:将文件解开到标准输出

练习:

# 归档多个文件
]# tar -cf ./ll.tar test.log yum.log # 展开归档到指定的目录
]# tar xf ll.tar -C /var/ # 查看归档中的文件
]# tar tf ll.tar # 归档并用gzip压缩
]# tar -zcf linux.tar.gz test.log yum.log
]# tar xf linux.tar.gz test.log yum.log # 归档并用xz压缩
]# tar -Jcf li.tar.xz test.log yum.log
]# tar xvf li.tar.xz # 归档并用bzip2压缩
]# tar -jcf lii.tar.bz2 test.log yum.log
]# tar xvf lii.tar.bz2

zip

参数:

    -v 显示指令执行过程或显示版本信息。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-q 不显示指令执行过程。
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-<压缩效率> 压缩效率是一个介于1-9的数值。
-d 指定解压文件夹

实例:

]# zip -r test.zip test
]# unzip test.zip -d l1/

  

Linux 常用解压缩归档命令的更多相关文章

  1. ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘

    本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...

  2. Linux 常用的压缩命令有 gzip 和 zip

    Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzip ...

  3. Linux的解压缩相关命令

    Linux的解压缩相关命令 知识点: 1.zip命令 2.tar命令 3.压缩和解压常用组合

  4. linux常用60条命令 转

    Linux必学的60个命令   Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命 ...

  5. LINUX常用配置及命令

    一.   Fedora系统配置 1.      [设置网卡IP] 步骤如下: 1)     用root用户登陆,打开/etc/sysconfig/network-scripts/ifcfg-eth0文 ...

  6. Linux常用的基础命令总结

    man 查看英文命令帮助   可以看作--help 拷贝目录的命令cp -a  包含所有 ls -a 显示所有文件包括隐藏文件  -ld ls -F 过滤目录文件(给不同类型文件结尾加上不同的符号) ...

  7. Java线上问题排查思路及Linux常用问题分析命令学习

    前言 之前线上有过一两次OOM的问题,但是每次定位问题都有点手足无措的感觉,刚好利用星期天,以测试环境为模版来学习一下Linux常用的几个排查问题的命令. 也可以帮助自己在以后的工作中快速的排查线上问 ...

  8. 入门学习Linux常用必会命令实例详解

    Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...

  9. 网络编程学习笔记-linux常用的网络命令

    网络参数设置命令 所有时刻如果你想要做好自己的网络参数设置,包括IP参数.路由参数和无线网络等,就得要了解下面这些相关的命令才行.其中Route及ip这两条命令是比较重要的.当然,比较早期的用法,我们 ...

随机推荐

  1. Android布局文件的载入过程分析:Activity.setContentView()源代码分析

    大家都知道在Activity的onCreate()中调用Activity.setContent()方法能够载入布局文件以设置该Activity的显示界面.本文将从setContentView()的源代 ...

  2. 使用ThoughtWorks.QRCode生成二维码

    新建Windows应用程序,加入引用ThoughtWorks.QRCode.dll,编写代码生成二维码. using System; using System.Drawing; using Syste ...

  3. MountService整理

    刚毕业时第一个接触的模块就是Vold.这个模块尽管小,但深入下去是有一定难度的. 花了点时间又一次整理了下这一块的逻辑,也当温习下这个模块. watermark/2/text/aHR0cDovL2Js ...

  4. jQuery插件开发初探

    最简单的插件 $.fn.changeStyle = function (colorStr) { $(this).css('color',colorStr); } 应用如下: <!DOCTYPE ...

  5. 9.java 操作mongodb插入、读取、修改以及删除基础

    1 package mongodb; import java.net.UnknownHostException; import java.util.ArrayList; import java.uti ...

  6. BZOJ 4034 线段树+DFS序

    思路: 先搞出来每个点的DFS序 (要有入栈和出栈两种状态的) 处理出来 线段树区间有多少入栈的和多少出栈的 加区间的时候就加(入-出)*wei 查前缀和 //By SiriusRen #includ ...

  7. 用Struts2搭建一个登录例子【本人亲测好用】

    今天尝试struts2的搭建,遇到不少的问题,终于一一解决,逛了很多地方,最终完成搭建 1.首先要下载struts2的一些组件,我下载的是版本2.3.4.1,Eclipse是4.6版本的.由于版本的不 ...

  8. C#中如何获得两个日期之间的天数差 ( c# 计算两个日期之间相差的天数 )

    DateTime dtLast = new DateTime(Convert.ToInt32(LastMenses.Year), Convert.ToInt32(LastMenses.Month), ...

  9. TwinCAT 3中基于UDP协议通讯的C++实现

    因为项目需要,学习了TwinCAT3中使用UDP协议进行通讯的基本知识.这个做个简单的笔记,方便以后查询. 1 概述 倍福为了实现从实时环境中直接访问网卡(network cards)专门提供了一个函 ...

  10. scp---远程拷贝文件

    scp命令用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器硬盘变为只读read onl ...