Linux中常用的压缩和解压缩命令汇总

说白了,Linux下压缩和解压文件比Windows复杂多了,各种后缀名确实容易让人头疼。
其实很简单,核心就靠tar和gzip这类命令,但得知道它们怎么配合使用。

先说最重要的,tar命令是万能的打包工具,但不是压缩工具。
去年我们跑的一个项目,纯用tar打包后传输,结果文件体积巨大到卡死带宽。
正确用法是:用tar结合gzip(.gz)、bzip2 (.bz2 )或xz(.xz)来压缩。
比如.tar.gz就是用tar打包再用gzip压缩,命令是tar czvf filename.tar.gz dirname,注意是c(create)、z(gzip)、v(verbose)、f(file)。
另外一点,xz压缩率最高但解压慢,去年测试过,解压3 000量级文件时,xz比gzip慢快近一倍。
还有个细节挺关键的,比如.tar.xz要用tar的-J参数,别搞混成-Jz,那会报错。

我一开始也以为unzip就能搞定所有zip文件,后来发现不对,Linux下的zip需要单独装zip命令,而且unzip对老式zip格式兼容性差。
等等,还有个事,很多系统默认没安装rar,但rar是Windows那边最强的压缩格式之一,解压命令是rar x,压缩是rar a。
不过rar有个坑,它默认加密需要安装密钥,没装密钥压缩后别人解压不了,这点很多人没注意。

结尾:建议先装个all-in-one工具如archivemanager,或者按需装tar、gzip、bzip2 、xz、zip、rar,别试图一个包解决所有问题,否则最后会像你一样陷入各种后缀名的折磨。

Linux下查看压缩文件内容的 10 种方法

1 . Vim查看:Vim编辑器直接打test.tar.gz,看文件列表,文本文件点Enter看内容。
2 . tar-tf:用tar命令-tf看test.tar文件列表。
3 . tar-tvf:用tar命令-tvf看test.tar详细属性。
4 . rarvtest.rar:用rar命令查看RAR包内容。
5 . unrarltest.rar:用unrar命令列出RAR文件基本信息。
6 . zip-sftest.zip:用zip命令-sf快速看ZIP文件名和大小。
7 . unzip-ltest.zip:用unzip命令-l看ZIP文件详细内容。
8 . zipinfotest.zip:用zipinfo命令看ZIP文件详细信息。
9 . zcattest.tar.gz:用zcat命令直接看.gz文件内容。
1 0. zlesstest.tar.gz:用zless命令逐页看.gz文件内容。
1 1 . lesstest.tar.gz:用less命令交互式浏览压缩文件。
1 2 . 没装rar、unrar,用包管理器安装。

你自己掂量。

Linux系统如何解压rar文件

哈,你问这个啊,上周有个客户问我Linux怎么解压rar,我直接给他整不会了,后来自己琢磨半天,给你捋捋:
---
场景: 2 02 3 年1 0月在上海,我远程帮同事解决Linux服务器上解压rar的问题
具体操作步骤:
1 . 先搞Linux版的rar包 你得去RAR官网下,不是那个Windows版瞎搞。
找这个 rarlinux-x6 4 -6 1 0b2 .tar.gz 这种名字的。
记得看系统是3 2 位还是6 4 位,我这台是6 4 位的,就下这个 x6 4 的。
下错了编译都报错,浪费时间。

2 . 解压那个tar.gz 下完之后用 tar 命令解压。
我一般写成这样: bash tar -xzpvf rarlinux-x6 4 -6 1 0b2 .tar.gz 别瞎改参数,我试过 -x 是解压,-z 处理gzip,-p 保留权限,-v 是显示过程,-f 才是定文件名。
写错一个就乱套。

3 . 安装环节(关键!) 解压完会看到一个 rar 文件夹,进去执行: bash cd rar make 注意: Linux版 rar 特殊,它不用像普通编译那样 ./configure + make + make install。
直接 make 就行,它会把 rar 和 unrar 这俩二进制文件自动复制到 /usr/local/bin 目录。
如果嫌慢或者卡,你也能手动复制,但 make 简单省事。

4 . 解压文件 这步最简单,在命令行敲: bash rar x yourfile.rar 就解压到当前目录。
如果要去指定文件夹,比如解压到 /home/user/backup,就写: bash rar x yourfile.rar /home/user/backup 它会保留原文件的路径结构,不会全乱到一起。

补充:压缩和替代方案
压缩文件:想打包 /etc 目录,就: bash rar a etc.rar /etc 别忘了 a 是 add,加文件进压缩包。
只解压不压缩:如果系统没装 rar,又得 rar 文件,可以单独装 unrar。
Ubuntu/Debian:sudo apt install unrar CentOS/RHEL:sudo yum install unrar 用 unrar 解压也一样:unrar x yourfile.rar
踩坑总结:
命令找不到:检查 /usr/local/bin 在 PATH 里没?不在就 export 路径,或者直接 /usr/local/bin/rar x ... 这样绝对路径跑。
权限问题:装 make 的时候用 sudo,或者解压/解压目标目录没权限。
文件损坏:重下 rar 包,或者用 rar t yourfile.rar 测试文件完整性。

---
反正你照着这些步骤操作,基本都能搞定。
没别的问题我就不多说了,我这人就喜欢直来直去。