Linux打包和压缩工具的使用详解

 更新时间:2018年07月25日 08:55:19   作者:DanaShaw  
对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名 给搞晕。别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar。可是Linux就不同 了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等众多的压缩文件名

压缩工具:gzip,bzip2 压缩能力逐渐增强
打包或压缩工具:tar
打包并压缩工具:zip 压缩能力比gzip和bzip2都强

gzip和bzip2这两种压缩工具的区别:

gzip和bzip2只能压缩文件,zip可以压缩文件和目录

bzip2和gzip的使用方法差不多,而且压缩后源文件消失,解压后压缩文件消失。bzip2多一个特色功能bzcat,可以查看压缩文件的内容

bzip2 [文件名] 压缩某个文件
bzip2 -d [压缩文件名] 解压某个压缩文件
gzip [文件名] 压缩某个文件
gzip -d [压缩文件名] 解压某个压缩文件
bzcat [压缩文件名] 查看某个压缩文件的内容

bzip2用法:

$ bzip2 file 
默认情况下,bzip2命令尝试压缩原始文件,并用压缩后的文件(同样的文件名加上.bz2扩展)替换它。

解压:

$ bunzip2 file.bz2 

如果file是文本文件,可以用bzcat查看:

$ bzcat file.bz2

gzip用法跟bzip2一样。

打包或压缩工具tar:

tar的打包功能

tar -cvf [待生成的包] [目录名] [文件名] 打包目录和文件
tar -xvf [包名] 解包

tar的压缩功能

tar -zcvf [待生成的压缩包名.tar.gz] [文件名] [目录名]
------打包文件和目录,并压缩(以gzip方式压缩)
tar -jcvf [待生成的压缩包名.tar.bz2] [文件名] [目录名]
------打包文件和目录,并压缩(以bzip2方式压缩)
tar -zcvf [压缩包名.tar.gz] --exclude [排除打包的文件或目录名] [文件名] [目录名]
------排除打包某个文件或目录,并以gzip方式压缩
tar -tf [包名] 查看包里面的所有文件

打包并压缩工具zip:

zip用于打包并压缩文件或目录
zip -r [待生成的压缩包名] [文件] [目录] 打包文件和目录,并压缩
unzip用于解压压缩包
unzip [压缩包名] 解压压缩包
tar和zip:压缩后源文件保留,解压后压缩文件也保留。

tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面来举例说明一下:

  # 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 -xf all.tar
  这条命令是解出all.tar包中所有文件,-x是解包的意思

以上就是tar的最基本的用法。

相关文章

  • linux文件上传,给文件或目录添加apache权限的方法

    linux文件上传,给文件或目录添加apache权限的方法

    下面小编就为大家带来一篇linux文件上传,给文件或目录添加apache权限的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • 详解linux下tar压缩解压缩文件夹的命令与参数

    详解linux下tar压缩解压缩文件夹的命令与参数

    大家都知道压缩文件或者文件夹可以为磁盘节省不少空间,那么Linux系统的压缩和解压缩命令都有哪些呢?参数又有哪些呢?下面小编就给大家介绍Linux下tar压缩和解压缩文件夹的命令与参数,希望本文的内容对你能有所帮助。
    2016-11-11
  • linux kernel 打印函数指针对应的函数名方法

    linux kernel 打印函数指针对应的函数名方法

    下面小编就为大家带来一篇linux kernel 打印函数指针对应的函数名方法。小编觉得挺不错的。现在就分享给大家。也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • 详解Linux上svn命令行批量操作

    详解Linux上svn命令行批量操作

    这篇文章主要介绍了详解Linux上svn命令行批量操作的相关资料,linux上的svn命令行批量添加或删除文件,需要的朋友可以参考下
    2017-07-07
  • 教你一招实现Linux中的文本比对

    教你一招实现Linux中的文本比对

    这篇文章主要给阿加介绍了关于Linux下文本比对的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • 快速解决linux下中文输入法问题

    快速解决linux下中文输入法问题

    这篇文章主要介绍了linux下中文输入法问题及解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 详解Win10 Bash/WSL调试Linux环境下的.NET Core应用程序

    详解Win10 Bash/WSL调试Linux环境下的.NET Core应用程序

    本篇文章主要介绍了详解Win10 Bash/WSL调试Linux环境下的.NET Core应用程序 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Linux usermod 命令的使用

    Linux usermod 命令的使用

    这篇文章主要介绍了Linux usermod 命令的使用,帮助大家更好的理解和学习Linux,感兴趣的朋友可以了解下
    2020-08-08
  • 关于Linux的mariadb数据库

    关于Linux的mariadb数据库

    这篇文章主要介绍了关于Linux的mariadb数据库的相关资料,主要就是用户可以对文件中的数据进行新增、截取、更新、删除等操作,需要的朋友可以参考下面文章内容
    2021-09-09
  • Linux下的chkconfig命令详解

    Linux下的chkconfig命令详解

    大家都知道chkconfig命令在linux中使用是非常的关键的,我们可以利用chkconfig来对系统的一些启动与禁止相关设置,下面这篇文章小编就来给大家详细的介绍Linux下的chkconfig命令用法,有需要的朋友们可以参考学习,下面来一起看看吧。
    2016-11-11

最新评论