gzip 命令
该命令用于压缩文件(只能压缩文件,不能压缩目录),压缩后的文件格式为 .gz,其语法为:
gzip [文件]
下面我们压缩一个文件来看看情况,在之前我们在 /tmp 目录下创建了一个文件 hello,我们来尝试压缩这个文件。
首先我们进入 /tmp 目录,显示目录下的所有文件与子目录。
确实存在 hello 这个文件,然后我们将其压缩。
然后我们再显示 /tmp 目录下的所有文件与子目录。
很显然,我们已成功压缩这个 hello 文件。
gunzip 命令
该命令用于解压缩 .gz 的压缩文件,其语法为:
gunzip [压缩文件]
我们来将 hello.gz 解压缩,执行命令如下:
然后我们再显示 /tmp 目录下的所有文件与子目录。
显然我们又将 hello.gz 解压缩成 hello 文件了。
tar 命令
该命令用于打包目录,压缩后的文件格式为 .tar.gz,其语法为:
tar [-zcf] [压缩后文件名] [目录]
其中,常用的选项有以下几种,-c 表示打包,-v 表示显示详细信息,-f 表示指定文件名,-z 表示打包同时压缩。
下面我们来测试一下,首先我们在 /tmp 目录下创建一个新目录 /new。
然后我们进入 /tmp/new,创建两个文件 test1 和 test2。
最后我们打包压缩目录 /tmp/new。
我们查看一下 /tmp 目录下的文件与子目录,可见原目录与压缩包同时存在,在这一点上 tar 命令与 gzip 命令不同。
如果我们想要解压缩,这将会是一件十分简单的事情,因为我们可以使用 -x 这个选项。-x 选项表示解包,如果我们使用 tar 命令做解压缩,只需要将压缩时使用的 -c 选项替换为 -x 即可,在 tar 命令的解压缩语法中,-z 表示解压缩,其余两个选项与压缩时相同。
我们来尝试一下将 new.tar.gz 解压缩,首先我们先删除 new 目录。
现在 /tmp 下只有 new 目录的压缩文件而没有 new 目录,然后我们将 new.tar.gz 解压缩。
查看一下 /tmp 目录下的文件与子目录,可以再次见到 new 目录,说明我们的解压缩成功。
zip 命令
该命令用于压缩文件或目录,压缩后的文件格式为 .zip,其语法为:
zip [-r] [压缩后文件名] [文件或目录]
-r 选项表示压缩目录。
unzip 命令
该命令用于解压 .zip 的压缩文件,语法为:
unzip [压缩文件]
bzip2 命令
该命令用于压缩文件,压缩后的文件格式为 .bz2,其语法为:
bzip2 [-k] [文件]
-k 选项表示产生压缩文件之后保留原文件。
我们来压缩一下 hello 文件。
然后使用 ls 命令查看 /tmp 目录下的文件与子目录,可见:
我们已成功将 hello 压缩成 hello.bz2。
我们也可以使用 tar 命令实现相应的压缩,使用 tar 命令可以也将文件压缩为 .tar.bz2 的格式,执行的命令与压缩格式为 .tar.gz 时基本相同,只不过需要将 -z 选项替换为 -j 选项,示例如下:
bunzip2 命令
该命令用于解压缩,其语法为:
bunzip2 [-k] [压缩文件]
-k 表示解压缩后保留原文件。
例如,我们尝试将 hello.bz2 解压缩为 hello,首先,为了观察方便,我们先直接删除 hello。
然后我们执行解压缩命令:
然后我们再执行 ls 命令查看一下:
显然,hello.bz2 解压缩成功。
如果我们想解压 .tar.bz2 格式的文件,只需将 -z 替换为 -j,其余格式均与解压 .tar.gz 文件相同。