p.p1 { margin: 0; font: 12px Arial; color: rgba(5, 42, 136, 1) }
p.p2 { margin: 0; font: 12px "Helvetica Neue"; min-height: 14px }
p.p3 { margin: 0; font: 12px "Helvetica Neue" }
p.p4 { margin: 0; font: 12px ".PingFang SC" }
p.p5 { margin: 0; font: 14px "PingFang SC"; color: rgba(251, 0, 7, 1) }
p.p6 { margin: 0; font: 12px Courier }
p.p7 { margin: 0; font: 14px "PingFang SC"; color: rgba(57, 57, 57, 1) }
p.p8 { margin: 0; font: 12px "Helvetica Neue"; color: rgba(204, 102, 255, 1) }
p.p9 { margin: 0; font: 14px Menlo; color: rgba(155, 162, 177, 1) }
p.p10 { margin: 0; font: 14px "PingFang SC"; color: rgba(155, 162, 177, 1) }
span.s1 { font: 12px "PingFang SC" }
span.s2 { font: 12px ".PingFang SC" }
span.s3 { font: 12px "Helvetica Neue" }
span.s4 { font: 14px Arial }
span.s5 { font: 12px Courier }
span.s6 { font: 12px "Helvetica Neue"; color: rgba(0, 0, 0, 1) }
span.s7 { font: 12px ".PingFang SC"; color: rgba(0, 0, 0, 1) }
span.s8 { color: rgba(0, 3, 255, 1) }
span.s9 { font: 14px Arial; color: rgba(57, 57, 57, 1) }
span.s10 { color: rgba(0, 0, 0, 1) }
span.s11 { font: 14px "PingFang SC" }
span.s12 { font: 14px Menlo }

1.tar命令

基础参数:

  • -c 创建tar包
  • -x 解压
  • -t 查看压缩包中的内容(查看文件内容时对于使用某种压缩方式压缩过的包要加上对应的参数,例如:使用 gzip 压缩得到包etc.tar.gz,查看内容时需要加上z 这个参数)
  • -r 向压缩包中添加文件
  • -u 修改原来压缩包中的文件

这五个命令是tar命令的五种类型,使用tar时必须使用其中一个。

特殊参数:

  • -f 指定tar包,这个参数后只能接tar包名
  • -C dir参数的作用在于改变工作目录
    • -C 指定需要解压到的目录。e.g: tar -xvf rdb-release-20170706.tar -C /Users/test/Downloads/
    • -C 指定需要打包的目录。 e.g: tar -czvf rdb-release-20170706.tar -C /Users/test/   Downloads/,该命令中源目录使用相对路径Downloads/,压缩路径为Downloads;tar -czvf rdb-release-20170706.tar -C /Users/test/Downloads/   ./ ,该命令中源目录使用相对路径./,压缩路径为./。
    • 不使用-C指定打包的目录。tar -czvf rdb-release-20170706.tar /Users/test/Downloads/,该命令中源目录使用绝对路径/Users/test/Downloads/,压缩时目录连同绝对路径(这里是Users/test/Downloads/,根目录'/'被自动去掉了)一并被压缩进来

使用-C指定目录时,若目录不存在会报错。

其他参数:

  • -z:是否同时具有 gzip 的属性, 一般格式为xx.tar.gz或xx. tgz
  • -v:显示所有过程
  • -j:是否同时具有 bzip2 的属性,一般格式为xx.tar.bz2
  • -Z:有compress属性的
  • -O:将文件解开到标准输出
  • -p :使用原文件的原来属性(属性不会依据使用者而变)
  • --exclude FILE:在压缩的过程中,不要将 FILE 打包!

举栗:

  • tar -cf all.tar *.jpg  #这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
  • tar -rf all.tar *.gif 这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
  • tar -uf all.tar logo.gif #这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
  • tar -tf all.tar  #这条命令是列出all.tar包中所有文件,-t是列出文件的意思
  • tar -ztvf all.tar.gz  #如果使用 gzip 压缩,查阅tar包中的文件时,就得要加上参数z!这很重要的!
  • tar -xf all.tar  #这条命令是解出all.tar包中所有文件,-x是解开的意思

各种压缩举栗:

  • tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成jpg.tar
  • tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
  • tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
  • tar -cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
  • rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
  • zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
  • tar --exclude /home/dmtsai -zcvf file.tar.gz /home/* /etc   #备份 /home, /etc 目录,但不要 /home/dmtsai

各种解压举栗:

  • tar -xvf file.tar //解压 tar包
  • tar -xzvf file.tar.gz //解压tar.gz
  • tar -xjvf file.tar.bz2   //解压 tar.bz2
  • tar -xZvf file.tar.Z   //解压tar.Z
  • unrar e file.rar //解压rar
  • unzip file.zip //解压zip

解压单个文件,比如:解压file.tar.gz文件,可以先通过tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件就可以通过 tar -zxvf file.tar.gz  etc/passwd.注意到file.tar.gz 内的根目录 / 是被拿掉了

2.zip命令

压缩 

  • 压缩文件  zip jpg.zip *.jpg
  • 压缩目录  zip -r jpg.zip aaa/

解压

  • unzip test.zip
  • 解压到指定目录:unzip -d /temp test.zip
  • 查看压缩包的内容:unzip -l test.zip
  • 查看压缩包中的文件列表并显示压缩率:unzip -v test.zip
  • 查看压缩包是否损坏:unzip -t test.zip
  • 覆盖原来的文件 -o:unzip -o test.zip -d /tmp/
  • 不覆盖原来的文件 -n:unzip -n -d /temp test.zip

3.gzip与gunzip命令

用于压缩或解压.gz文件

压缩文件:gzip 源文件

例如:如压缩 b.txt,使用命令gzip b.txt 即可。压缩为 .gz 文件 源文件会消失。

如果想保留源文件 使用命令gzip -c 源文件 >压缩文件

压缩目录:gzip -r 目录

注意 gzip 压缩目录 只会压缩目录下的所有文件,不会将目录压缩为一个.gz文件

解压文件:gzip -d 压缩文件 或者 gunzip 压缩文件

gunzip -f  覆盖原有文件

总结

  • *.tar 用 tar -xvf 解压
  • *.gz 用 gzip -d或者gunzip 解压
  • *.tar.gz和*.tgz 用 tar -xzf 解压
  • *.bz2 用 bzip2 -d或者用bunzip2 解压
  • *.tar.bz2用tar -xjf 解压
  • *.Z 用 uncompress 解压
  • *.tar.Z 用tar -xZf 解压
  • *.rar 用 unrar e解压
  • *.zip 用 unzip 解压
查看搜索压缩文件的内容
搜索文件内容   zgrep  'string0' filename
查看文件内容   zcat filename

参考文献:https://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.html

linux下的压缩命令 tar zip gunzip的更多相关文章

  1. Linux解压/压缩命令——tar、gz、tar.gz、tgz、bz2、tar.bz2、Z、zip、rar、lha

    .tar 解包:tar -xvf FileName.tar 打包:tar -cvf FileName.tar DirName ——————————————— .gz 解压1:gunzip FileNa ...

  2. linux下的压缩命令

    linux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip - ...

  3. (六)Linux下的压缩命令

    ======================================================================================== .zip格式的压缩和解 ...

  4. 【转】打包 压缩 命令tar zip

    https://www.cnblogs.com/centos2017/p/7896807.html tar语法 #压缩tar -czvf ***.tar.gztar -cjvf ***.tar.bz2 ...

  5. 打包 压缩 命令tar zip

    tar语法 #压缩tar -czvf ***.tar.gztar -cjvf ***.tar.bz2#解压缩tar -xzvf ***.tar.gztar -xjvf ***.tar.bz2 tar ...

  6. Linux下的压缩zip,解压缩unzip命令详解及实例

    实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...

  7. Linux下的压缩zip,解压缩unzip命令具体解释及实例

    实例:压缩server上当前文件夹的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前文件夹 unzip filename.zip ================= ...

  8. Linux下的压缩解压缩命令详解

    linux zip命令zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o - ...

  9. Linux下的压缩解压缩命令详解及实例

    实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...

随机推荐

  1. 7.2-5 usermod

    7.2 usermod:修改用户信息 usermod 命令用于修改系统已经存在的用户的账号信息.   -c comment         修改用户password文件中用户的说明栏,同useradd ...

  2. 也谈如何写一个Webserver(三)

    在上一篇里,我介绍了如何应用socket和epoll来组织和管理从客户端(如,浏览器)传入的连接,通过设置非阻塞连接让Webserver有更好的性能. 下面,我介绍一下在我写的Webserver Ma ...

  3. harobor私有docker镜像仓库

    Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,由VMware开源,其通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源 Docker Distribu ...

  4. linux免密传输文件 nc

    nc命令很强大,用来在内网传输小文件也不错,最主要的是仅一次传输的情况下不需要用户和密码即可直接接受与发送文件 不管是linux2linux 还是 linux2windows皆可 先决条件: 1.使用 ...

  5. ELK技术栈之-Logstash详解

    ELK技术栈之-Logstash详解   前言 在第九章节中,我们已经安装好Logstash组件了,并且启动实例测试它的数据输入和输出,但是用的是最简单的控制台标准输入和标准输出,那这节我们就来深入的 ...

  6. windows 映射驱动器 图标显示不正常

    正常图标是这样的: 我的变成了这样: 解决方法: 注册表进入: HKEY_CURRENT_USER\SOFTWARE\Classes\Applications\Explorer.exe\Drives\ ...

  7. NNVM AI框架编译器

    NNVM AI框架编译器 深度学习已变得无处不在且不可或缺.看到对在多种平台(例如手机,GPU,IoT设备和专用加速器)上部署深度学习工作负载的需求不断增长.TVM堆栈弥合深度学习框架与面向性能或效率 ...

  8. TensorFlow分布式(多GPU和多服务器)详解

    本文介绍有关 TensorFlow 分布式的两个实际用例,分别是数据并行(将数据分布到多个 GPU 上)和多服务器分配. 玩转分布式TensorFlow:多个GPU和一个CPU展示一个数据并行的例子, ...

  9. 关于Numba的线程实现的说明

    关于Numba的线程实现的说明 由Numbaparallel目标执行的工作由Numba线程层执行.实际上,"线程层"是Numba内置库,可以执行所需的并发执行.在撰写本文时,有三个 ...

  10. NX二次开发-矩阵乘矩阵的几何意义

    函数:UF_MTX3_multiply() 或者UF_MTX3_multiply_t().推荐使用UF_MTX3_multiply() 函数说明:矩阵相乘,得到新的矩阵,如下图WCS与ABS重合,在暗 ...