一次性分清zip、gzip、bzip2、tar命令
创始人
2024-03-18 06:23:30

文章目录

    • 归类
      • zip与unzip命令
      • tar命令
    • 使用方式
      • zip
      • unzip
      • gzip
      • gunzip
      • bzip2
      • bunzip2
      • tar

归类

img

我们把这几个命令归类为几种能力,一个是解压缩能力一个是打拆包能力。

我这里打包的意思是不使用压缩算法对文件进行压缩,只是简单的把多个文件归档为一个文件。而拆包则是它的逆过程。

压缩则是大家熟知的将文件以某种压缩算法对内容进行缩减,解压则是它的逆过程。

zip与unzip命令

zip命令用于将文件压缩为 .zip 格式的文件,之所以将他定义为可打包拆包是因为他可以支持多文件的压缩,而其他的 gzipbzip2 只能对单文件进行压缩,也就是说如果要压缩多文件,需要先经过打包过程变成单文件再压缩,.zip 格式的文件默认将打包和压缩放在一起了,而 zip 命令也不支持单独的打包再压缩。

tar命令

不加入 -z-j 参数,加入 -c 表示对文件或目录进行归档。

所以tar命令是支持单独的归档功能的,具体的压缩算法可以通过参数指定可以是 gzip 也可以是 bzip2 或其他。

使用方式

zip

命令格式

zip [-r] [压缩后文件名] [文件或目录]

命令描述

  • zip命令用来对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。

选项

  • -r: 递归处理,将指定目录下的所有文件和子目录一并处理,用于压缩目录
  • -x:压缩时排除符合条件的文件
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ zip a.zip a.txt #压缩文件adding: a.txt (stored 0%)
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  a.txt  a.zip
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ touch abc/tmp.txt
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ zip -r abc.zip abc/ -x abc/tmp.txt #压缩文件夹并忽略某些文件adding: abc/ (stored 0%)

unzip

命令格式

unzip [选项] 文件名

命令描述

unzip命令用于解压缩由zip命令压缩的“.zip”压缩包。

选项

  • -n:解压缩时不要覆盖原有的文件;
  • -o:不必先询问用户,unzip执行后覆盖原有的文件;
  • -d <目录>:指定文件解压缩后所要存储的目录(不指定目录,默认解压到当前目录)
  • 可配合tar命令对 tar.gz 文件进行解压缩和拆包 tar -zxvf 文件名

示例

ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ unzip abc.zip -d ~ #解压到指定目录
Archive:  abc.zipcreating: /home/ljb/abc/

gzip

命令格式

gzip [文件]

命令描述

gzip 压缩过后,其名称后面会多处 .gz 扩展名。

注意:gzip 只能压缩文件,不能压缩文件夹,压缩后原文件会被删除。

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip压缩常常用在http的网络请求中。

示例

ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ touch b.txt
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  abc.zip  a.txt  a.zip  b.txt
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gzip b.txt #压缩后生产b.txt.gz,原本的文件不见了
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  abc.zip  a.txt  a.zip  b.txt.gz

gunzip

命令格式

gunzip [文件]

命令描述

gunzip命令用来解压缩 xxx.gz 文件。

示例

ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  abc.zip  a.txt  a.zip  b.txt.gz
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gunzip b.txt.gz
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls #解压缩成功,得到b.txt文件
abc  abc.zip  a.txt  a.zip  b.txt

bzip2

命令格式

bzip2 [选项] [文件]

命令描述

  • bzip2命令用于压缩 .bz2 格式的压缩包,是gzip的升级版本,可以保留原文件。
  • bzip2的压缩比比较高,可用于压缩较大文件。
  • bzip2也是只对文件进行压缩,如果相对目录进行压缩的话,可以用其他命令打包成一个文件(如tar)。

选项

-k(keep):保留原文件(不删除原文件)

示例

# bzip2 压缩文件
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ touch c.txt
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ bzip2 -k c.txt
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  abc.zip  a.txt  a.zip  b.txt  c.txt  c.txt.bz2# 配合使用tar 命令,完成打包压缩(后面会讲tar命令的使用)
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ mkdir music
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ tar -jcvf music.tar.bz2 music/
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
abc  abc.zip  a.txt  a.zip  b.txt  c.txt  c.txt.bz2  music  music.tar.bz2

bunzip2

命令格式

bunzip2 [选项] [文件]

命令描述

  • 解压缩 .bz2 格式的压缩文件;
  • gunzip 的升级版,可以使用-k保留原文件;
  • 可以配合使用tar命令,完成解压缩解包: tar -jxvf 文件名

选项

-k(keep):保留原文件(不删除原文件)

示例

#删除只剩下c.txt.bz2
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ rm -rf !(c.txt.bz2)
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
c.txt.bz2
#解压bz2文件
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ bunzip2 c.txt.bz2
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
c.txt

tar

命令格式

tar [选项] [压缩后文件名] [目录]

命令描述

打包目录,将目录打包成一个文件,同时可以压缩,可以自由选择压缩算法。

使用tar命令时,如果想要打包并压缩一个目录,可以有两种方法进行:

  1. 先利用 tar 命令打包目录为一个文件,然后使用 gzipbzip2 压缩。
  2. 直接利用 tar 命令打包并压缩 (简单方便,推荐使用)。

解压时也有两种方式:

  1. 先使用 gunzipbunzip2 解压缩,再使用 tar 解包.
  2. 直接利用tar命令解压缩并解包 (简单方便,推荐使用)

选项

  • -c:打包
  • -x:拆包
  • -v:显示详细信息
  • -f:指定文件名
  • -z:表示使用 gzip 进行解压缩,压缩后的拓展名为 .tar.gz,这个拓展名在下载Linux相关安装包时很常见。
  • -j:表示使用 bzip2 进行解压缩,压缩后拓展名为 .tar.bz2

一般来说,-vf 参数肯定会带上的,根据打包/拆包选择-c或-x,根据使用的压缩算法选择 -z 或 -j。

示例

# 1、2为打包压缩的两种方法
# 1. 使用 tar -cvf 打包,然后使用gzip压缩
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ mkdir movie
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$# tar -cvf movie.tar movie/
movie/
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie.tar
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gzip movie.tar
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie.tar.gz# 2. 使用 tar -zcvf 打包并压缩
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ tar -zcvf movie2.tar.gz movie
movie/
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie2.tar.gz  movie.tar.gz# 3、4为解压缩并解包的两种方法# 3. 先使用gunzip解压缩,然后 tar -xvf解包
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie2.tar.gz  movie.tar.gz
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ rm -rf movie
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie2.tar.gz  movie.tar.gz
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ gunzip movie.tar.gz
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie2.tar.gz  movie.tar
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ tar -xvf movie.tar
movie/
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie2.tar.gz  movie.tar# 4. 使用tar -zxvf 解压缩并解包
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie2.tar.gz  movie.tar
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ rm -rf movie
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ tar -zxvf movie2.tar.gz
movie/
ljb@Wangzhe0cnmdUTF-8:/mnt/d/linux_shell$ ls
movie  movie2.tar.gz  movie.tar

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...