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. 5.1-5 uname、hostname、dmesg、stat、du

    5.1 uname:显示系统信息     uname命令用于显示系统相关信息,比如内核版本号.硬件架构等. -a    显示系统所有相关信息 -v    显示内核版本 -m    显示计算机硬件架构 ...

  2. Centos 6.5 启动报错 "Kernel panic - not syncing: Attempted to kill init"解决办法

    某一天,开发同事突然告诉我服务器上自己的虚拟机连不上了,我登陆到服务器CAS管理界面,重启虚拟机后发现报错了 问题:Kernel panic - not syncing: Attempted to k ...

  3. Keil编译后的Code,RO,RW,ZI分别表示什么以及和芯片Flash、SRAM的对应关系

    在使用keil开发STM32应用程序时,点击Build后在Build Output窗口中经常会有如下信息:<ignore_js_op> 以前一直好奇这几个参数和实际使用的STM32芯片中F ...

  4. F5 api接口开发实战(一)

    本人从18年下旬,开始从事F5负载均衡的自动化开发工作,主要使用python编程语言,开发的F5功能模块为LTM和GTM. F5开发简介 1.F5管理模式 F5的管理模式主要有4种(不包含snmp), ...

  5. ARM Cortex-M嵌入式C基础编程(上)

    ARM Cortex-M嵌入式C基础编程(上) ARM Cortex-M Embedded C Fundamentals/Tutorial -Aviral Mittal 此技术是关于从编写简单的嵌入式 ...

  6. C++标准模板库(STL)——set常见用法详解

    set的定义 set<typename> name; typename可以是任何基本类型,如int.double.char.结构体等,也可以是STL标准容器,如vector.set.que ...

  7. .NET平台系列22:.NET Core/.NET5/.NET6 对比 .NET Framework

    系列目录     [已更新最新开发文章,点击查看详细] 在我的博客<.NET平台系列2 .NET Framework 框架详解>与 <.NET平台系列7 .NET Core 体系结构 ...

  8. 码农飞升记-04-OracleJDK 与 OpenJDK 的区别和联系以及 OracleJDK builds 与其他 OpenJDK builds 的选择问题

    在前两篇 OracleJDK是什么?OracleJDK的版本怎么选择? 和 OpenJDK是什么? 中分别介绍了 OracleJDK 和 OpenJDK 的来历以及概念,那可能就有小伙伴要问了:那我到 ...

  9. 免费版对象存储【minIO】CentOS部署实践记录 2021

    好久没写,记录一下 1.背景 之前一直用的七牛,不过是收费的,然后有些定制化需求,可能比较看重预算,然后就有了这篇开源方式:minio 2.简介 官方文档:http://docs.minio.org. ...

  10. 【NX二次开发】UF_OBJ_ask_display_properties获取对象所在层、获取对象颜色、获取对象是否隐藏、获取对象是否高亮,获取对象线宽、字体大小

    UF_OBJ_ask_display_properties 返回一个对象的显示属性(层.颜色.隐藏状态.线宽和字体). UF_OBJ_disp_props_p_t结构体: layer int 对象所在 ...