在Linux日常维护中,经常需要备份同步一些比较重要的文件,而在传输过程中如果文件比较大往往会非常慢,而且还会非常占用空间,这时候就需要我们使用压缩工具对大文件进行压缩打包,下面我们来介绍一下常用的压缩工具以及其使用方法。

.命令: gzip [-d][--][filename]
作用:用来压缩文件,不能直接压缩目录,压缩完毕后源文件消失
‘-d’ 解压
‘-[-]’ 压缩等级(默认为6) 若想查看gzip压缩文件内容,可使用命令
zcat filename.gz

补充:
      '-c' 指定路径
    示例:
      压缩:gzip -c 1.txt > /tmp/1.txt.gz
      解压:gzip -d -c 1.txt.gz > /tmp/1.txt
           gunzip -c 1.txt.gz > /tmp/1.txt

注意:以上命令解压/压缩完后源文件不会被删除


.命令: bzip2 [-d][--][filename]
作用:用来压缩文件,不能直接压缩目录,压缩完毕后源文件消失
‘-d’ 解压
‘-[-]’ 压缩等级(默认为9) 若想查看bzip2压缩文件内容,可使用命令
bzcat filename.bz2

补充:
   bzip2也支持-c选项,也是压缩后源文件不会被删除

 
.命令: xz [-d][--][filename]
作用:用来压缩文件,不能直接压缩目录,压缩完毕后源文件消失
‘-d’ 解压
‘-[-]’ 压缩等级(默认为6) 若想查看xz压缩文件内容,可使用命令
xzcat filename.xz

其实,上述三个压缩命令并不常用,因为有更为强大的tar工具用以实现压缩的功能,到底有多强大呢,下面就来介绍工具tar

.命令:tar  [-zxcvf]
‘-z’ 是否同时具有gzip
‘-j’ 是否同时具有bzip2
‘-J’ 是否透视具有xzip
‘-x’ 解开一个压缩文件
‘-t’ 查看压缩包里面的文件
‘-c’ 建立一个压缩文件
‘-v’ 可视化
‘-f’ 使用filename
‘--exclude filename’ 在压缩过程中,跳过filename不打包
‘-C’ 指定解压目录(常用)
'-t' 用来查看压缩包里面的内容 用法:用以压缩解压文件/目录
格式:
压缩时:tar zxvf test.tar.gz test ,即 tar [被压缩完后的文件][没被压缩时的文件]这非常重要!
解压时:tar zcvf test.tar.gz -C /tmp ,不用参数‘-C’的情况下是解压到当前目录,'-C'指定解压目录
压缩时排除多个文件:tar zxvf test.tar.gz --exclude .txt --exclude .txt test ,也就是tar [被压缩完的文件] [要排除的文件][没被压缩时的文件] 注意:
()使用tar打包之后,绝对路径前面的/会去掉(仔细想想为什么会酱紫)
()tar本身不具有压缩功能,只是进行打包而已,要使用压缩功能必须与gzip或bzip2一起使用,其默认压缩级别取决于gzip或bzip2的默认压缩级别。
要改变压缩级别,需要将打包和压缩分开进行,先用tar进行打包,然后用gzip或bzip2指定压缩级别对打包文件进行压缩。例如,
tar -cvf FILE.tar FILE && gzip - FILE.tar
tar -cvf FILE.tar FILE && bzip2 - FILE.tar
拓展用法:
tar cvf - test| ssh 10.0.1.11 "cd /copy1/; tar xvf -"
命令解析:
还记得上面说的压缩时候的格式么,这条命令在管道‘|’之前那部分就是如此
‘-’代表标准输出
因此tar cvf - test意为“将test的内容打包成标准输出”
而 tar xvf - 则意为“将上面的标准输出的内容解压到当前目录”
至于ssh部分请参考之前关于ssh的文章,这里不作详细描述
命令作用:
这条命令非常实用,用于实现通过网络拷贝数据

说完了tar,问一个背景吧,你知道在windows下常见的压缩包有rar和zip,默认rar在linux下是不支持压缩和解压吗,好在有相关的工具可以安装在linux平台上。而zip的压缩包是可以同时存在于linux平台和windows平台上的,因此,我们来看一下zip和/unzip命令。

.命令:zip  [-r][filename.zip][filename]
作用:用来压缩文件/目录
‘-r’ 默认不支持直接压缩目录,需要用此参数 注意:zip压缩的格式类似与tar,都是压缩后,压缩前 命令:unzip [-ld] [file.zip]
作用:解压zip文件,且解压完毕后文件不会消失
‘-l’ 查看文件清单,类似于tar的-t
‘-d’ 指定解压目录,类似于tar的-C

最后更新时间:2017年4月7日09:31:43

Linux文件压缩/打包/解压的更多相关文章

  1. Linux 文件压缩与解压相关

    tar [-cxtzjvfpPN] 文件与目录 .... 参数:-c :建立一个压缩文件的参数指令-x :解开一个压缩文件的参数指令 -t :查看压缩文件里面的文件 特别注意: c/x/t 同时只能存 ...

  2. Linux文件压缩与解压命令

    1  .zip 格式压缩与解压 压缩命令 zip 压缩文件名 源文件 zip  -r   压缩目录名       源目录 解压命令 unzip 文件名 td@td-Lenovo-IdeaPad-Y41 ...

  3. 本地上传文件至服务器的技巧(linux文件压缩及解压文件)

    linux(ubuntu)文件解压及压缩文件 ubuntu支持文件的解压及压缩功能, 如果ubuntu上面没有安装过unzip工具的话,可以通过下面命令安装: sudo apt-get install ...

  4. linux 文件压缩与解压

    zip格式: zip -r(源文件是目录) [目标文件] [源文件] unzip -d [解压到的目录] [要解压的文件] gz格式: gzip [源文件]   #会删除源文件 gzip -c [源文 ...

  5. Linux之文件压缩与解压

    文件压缩与解压 1.tar命令 tar命令可以为Linux的文件和目录创建档案. 利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar最初被用来 ...

  6. 文件压缩跟解压(本地&Linux服务器)

    远程解压需要的jar包: <dependency> <groupId>commons-net</groupId> <artifactId>commons ...

  7. linux下压缩与解压(zip、unzip、tar)详解

    linux下压缩与解压(zip.unzip.tar)详解 2012-05-09 13:58:39| 分类: linux | 标签:linux zip unzip tar linux命令详解 |举报|字 ...

  8. Linux下压缩与解压

    转自:http://www.mike.org.cn/blog/index.php?load=read&id=218###pp=0 [在解压或压缩的时候,一般还使用-v选项来现实正在处理的文件信 ...

  9. 文件压缩、解压工具类。文件压缩格式为zip

    package com.JUtils.file; import java.io.BufferedOutputStream; import java.io.File; import java.io.Fi ...

随机推荐

  1. EasyPlayer-RTSP-Android安卓播放器播放RTSP延迟优化策略,极低延时!

    EasyPlayer-RTSP-Android安卓RTSP播放器低延迟播放延时优化策略 EasyPlayer-RTSP-Android播放器是一款专门针对RTSP协议进行过优化的流媒体播放器,其中我们 ...

  2. hadoop报错java.io.IOException: Bad connect ack with firstBadLink as 192.168.1.218:50010

    [root@linuxmain hadoop]# bin/hadoop jar hdfs3.jar com.dragon.test.CopyToHDFS Java HotSpot(TM) Client ...

  3. MVC4学习笔记之--身份认证过滤器

    过滤器作为MVC模式中面向切面编程应用很广泛,例如身份验证,日志,异常,行为截取等.博客园里面的大神对应过滤器的介绍以及很多,MVC4中不同的过滤器也介绍得很清楚.FlyDragon  辉太 禁止吸烟 ...

  4. python字符串拼接相关

    #字符串拼接#str.join(元组.列表.字典.字符串) 之后生成的只能是字符串.str = "-";seq = ("a", "b", & ...

  5. Mysql常用优化方案

    摘自:http://www.jb51.net/article/18934.htm 1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也 ...

  6. LinuxCentos系统安装Nginx过程记录

    网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务就是Web网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web网络服务是一种被动访问的服务程 ...

  7. 我的Android进阶之旅------>Android中Dialog系统样式讲解

    今天在维护公司的一个APP的时候,有如下场景. 弹出一个AlertDialog的时候,在系统语言是中文的时候,如下所示: 弹出一个AlertDialog的时候,在系统语言是English的时候,如下所 ...

  8. samba了解

    1. samba是一个网络服务器,用于Linux和Windows之间共享文件 2,amba服务的启动.停止.重启    service smb start|stop|restart3. 掌握samba ...

  9. 图的遍历:DFS和BFS

    图的遍历一般由两者方式:深度优先搜索(DFS),广度优先搜索(BFS),深度优先就是先访问完最深层次的数据元素,而BFS其实就是层次遍历,每一层每一层的遍历. 1.深度优先搜索(DFS) 我一贯习惯有 ...

  10. 笔画宽度变化(C++和matlab算法)

    最近一直在看工作方面的书籍,把论文的事情搁置了,之前承诺的贴代码的事一直拖.现在把代码整理发上来,只有核心部分的,都不是我写的,我是网上整理下载的,matlab代码的效果比较差. 全部文件网盘下载地址 ...