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. MyBatis 延迟加载(十四)

    什么是延迟加载 延迟加载又叫懒加载,也叫按需加载,也就是说先加载主表信息,需要的时候,再去加载从表信息.代码中有查询语句,当执行到查询语句时,并不是马上去数据库中查询,而是根据设置的延迟策略将查询向后 ...

  2. 10.16-17 mailq&mail:显示邮件传输队列&发送邮件

    mailq命令 是mail queue(邮件队列)的缩写,它会显示待发送的邮件队列,显示的条目包括邮件队列ID.邮件大小.加入队列时间.邮件发送者和接受者.如果邮件进行最后一次尝试后还没有将邮件投递出 ...

  3. kylin的rowkey优化之按维度分片

    我们知道,系统会对cuboid的数据进行分片处理. 但是默认的分片策略是随机的,如果group by a,b 的查询命中了某个cuboid,但是a=1 and b=1 的两条数据在不同的机器上存储, ...

  4. 5分钟安装docker教程

    Centos安装docker需要操作系统是 CentOS 7 or 8,必须启用centos extras存储库.默认情况下,此存储库处于启用状态,但如果已禁用它,则需要重新启用它. 卸载旧版本 老版 ...

  5. Python数模笔记-PuLP库(2)线性规划进阶

    1.基于字典的创建规划问题 上篇中介绍了使用 LpVariable 对逐一定义每个决策变量,设定名称.类型和上下界,类似地对约束条件也需要逐一设置模型参数.在大规模的规划问题中,这样逐个定义变量和设置 ...

  6. 几年前,为什么我撸了一套RabbitMQ客户端?

    之前文章说过,如果使用 RabbitMQ,尽可能使用框架,而不要去使用 RabbitMQ 提供的 Java 版客户端. 细说起来,其实还是因为 RabbitMQ 客户端的使用有很多的注意事项,稍微不注 ...

  7. Step By Step(Lua迭代器和泛型for)

    Step By Step(Lua迭代器和泛型for) 1. 迭代器与Closure:    在Lua中,迭代器通常为函数,每调用一次函数,即返回集合中的"下一个"元素.每个迭代器都 ...

  8. L4自动驾驶技术

    L4自动驾驶技术 一.SAE的五个级别分别是: L0:驾驶员完全掌控车辆,无任何自动化能力. L1:自动系统有时能够辅助驾驶员完成某些驾驶任务.比如高速自动巡航(自动认知所在车道),和一些驾驶辅助功能 ...

  9. 编写CUDA内核

    编写CUDA内核 介绍 与用于CPU编程的传统顺序模型不同,CUDA具有执行模型.在CUDA中,编写的代码将同时由多个线程(通常成百上千个)执行.解决方案将通过定义网格,块和线程层次结构进行建模. N ...

  10. 使用TENSORRT和NVIDIA-DOCKER部署深部神经网络

    使用TENSORRT和NVIDIA-DOCKER部署深部神经网络 当前部署工作流