在Linux中经常会下载到压缩文件,而压缩文件的格式有很多,比如 zip、rar、gz、xz、tar.gz、tar.xz等。

比较常见的就是各种 .tar、.tar.xz、.tar.gz、.tar.bz、.tar.bz2、.tar.Z 后缀压缩包,这几个的解压缩命令基本一样,说明一下参数的意义。

  • tar 本身只是一个打包的作用,而 .tar 后面的 .zx / .gz / .bz 等等才是压缩格式,也就是比如 log.tar.gz 压缩包,就是先用 .tar 把指定文件/文件夹打包到一起,然后再用 gz 来压缩打包后的 .tar 为 .tar.gz 。

-x 是从压缩文件提取(解压)文件出来,所以在解压命令中都有这个参数。-c :创建一个新的压缩包文件,所以在压缩命令中都有这个参数。-f :指定要解压的压缩包文件或要压缩的文件/文件夹,所以这个参数必须放在 解压缩命令参数的最后,然后后面跟着 要解压到压缩包文件或要压缩的文件/文件夹。-j :解压缩 bz / bz2 格式的参数-J :解压缩 xz / lzip 格式的参数-z :解压缩 gz / tgz 格式的参数-Z :解压缩 Z 格式的参数-v :详细列出解压缩过程中处理的文件 # 更多的命令可以用 tar --help 来查看。

  • tar gz zip等 解压 压缩包 示例

# 解压后缀为 .tar 的压缩包tar -xf log.tar# 解压后缀为 .tar.xz 的压缩包tar -xJf log.tar.xz# 解压后缀为 .tar.gz 的压缩包,有两个方法tar -xzf log.tar.gz# 解压后缀为 .gz 的压缩包,有两个方法,如提示命令不存在,请安装 yum install gzip -y / apt-get install gzip -ygzip -d log.gzgunzip log.gz# 解压后缀为 .bz / .bz2 / tar.bz2 的压缩包,有两个方法bzip2 -d log.bzbunzip2 log.bztar -jxf log.tar.bz bzip2 -d log.bz2bunzip2 log.bz2tar -jxf log.tar.bz2# 解压后缀为 .Z / tar.Z 的压缩包,有两个方法uncompress log.Z log.txtuncompress log.Z logtar xZf log.tar.Z log.txttar xZf log.tar.Z log# 解压后缀为 .rar 的压缩包,如提示命令不存在,请安装 yum install unrar -y / apt-get install unrar -y ,注意 rar 和 unrar 是分开的unrar x log.rar# 解压后缀为 .zip 的压缩包,如提示命令不存在,请安装 yum install unzip -y / apt-get install unzip -y,注意 zip 和 unzip 是分开的unzip log.zip # 更多的命令可以用 tar --help / gzip --help / unrar --help / unzip --help 来查看。

  • 压缩 文件/文件夹 示例

# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.tar 压缩包tar -cf log.tar log.txttar -cf log.tar log# 如果要压缩多个文件和文件夹,那么只需要在后面一直加下去即可tar -cf log.tar log.txt doub.txt log bash# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.tar.xz 压缩包,以下的其他后缀压缩命令都是一样tar -cJf log.tar.xz log.txttar -cJf log.tar.xz log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.tar.gz 压缩包tar -czf log.tar.gz log.txttar -czf log.tar.gz log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.gz 压缩包gzip log.gz log.txtgzip log.gz log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.tar.bz 压缩包--暂时没查到# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.bz / log.tar.bz / log.bz2 / log.tar.bz2压缩包bzip2 -z log.txtbzip2 -z log tar cjf log.tar.bz2 log.txttar cjf log.tar.bz2 log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.Z / log.tar.Z 压缩包compress log.txtcompress log tar cZf log.tar.Z log.txttar cZf log.tar.Z log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.rar 压缩包,如提示命令不存在,请安装 yum install rar -y / apt-get install rar -y ,注意 rar 和 unrar 是分开的unrar a log.rar log.txtunrar a log.rar log# 分别压缩当前目录下的 log.txt文件 / log文件夹为 log.zip 压缩包,如提示命令不存在,请安装 yum install zip -y / apt-get install zip -y ,注意 zip 和 unzip 是分开的zip log.zip log.txtzip log.zip log # 更多的命令可以用 tar --help / gzip --help / rar --help / zip --help 来查看。