Ubuntu下如何解压缩zip,tar,tar.gz,tar.bz2文件

本文详细介绍了各种常见压缩格式如tar、tar.gz、tar.bz2、zip、rar等的压缩与解压方法,包括tar、gzip、bzip2、unzip、rar等工具的使用技巧,适用于Linux、Windows及MacOS等多个平台。

tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
———————————————
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
———————————————
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
———————————————
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz

.tar.bz
解压:tar jxvf FileName.tar.bz
———————————————
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
———————————————
.tgz
解压:tar zxvf FileName.tgz

.tar.tgz
解压:tar zxvf FileName.tar.tgz
压缩:tar zcvf FileName.tar.tgz FileName
———————————————
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
———————————————
.rar
解压:rar a FileName.rar
压缩:rar e FileName.rar
———————————————
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName

 

ZIP
zip可能是目前使用得最多的文档压缩格式。它最大的优点就是在不同的操作系统平台,比如Linux, Windows以及MacOS,上使用。缺点就是支持的压缩率不是很高,而tar.gz和tar.gz2在压缩率方面做得非常好。闲话少说,我们步入正题吧:
我们可以使用下列的命令压缩一个目录:
# zip -r archive_name.zip directory_to_compress

下面是如果解压一个zip文档:
# unzip archive_name.zip

TAR
Tar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,他仅仅只是一个打包工具,并不负责压缩。下面是如何打包一个目录:
# tar -cvf archive_name.tar directory_to_compress

如何解包:
# tar -xvf archive_name.tar.gz

上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -xvf archive_name.tar -C /tmp/extract_here/

TAR.GZ
这种格式是我使用得最多的压缩格式。它在压缩时不会占用太多CPU的,而且可以得到一个非常理想的压缩率。使用下面这种格式去压缩一个目录:
# tar -zcvf archive_name.tar.gz directory_to_compress

解压缩:
# tar -zxvf archive_name.tar.gz

上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -zxvf archive_name.tar.gz -C /tmp/extract_here/

TAR.BZ2
这种压缩格式是我们提到的所有方式中压缩率最好的。当然,这也就意味着,它比前面的方式要占用更多的CPU与时间。这个就是你如何使用tar.bz2进行压缩。
# tar -jcvf archive_name.tar.bz2 directory_to_compress

上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/

在 Linux 中,`.tar.bz2` 文件是一种常见的压缩文件格式,它实际上是两次处理的结果: - `.tar`:将多个文件打包成一个文件(归档) - `.bz2`:使用 `bzip2` 算法对打包后的文件进行压缩 所以 `.tar.bz2` 是“先打包,再压缩”的结果。解压时需要**反向操作**:先解压缩(bunzip2),再解包(untar)。 --- ## ✅ 一、使用一条命令解压 `.tar.bz2` 文件 Linux 提供了 `tar` 命令,可以**自动识别并解压** `.tar.bz2` 文件: ```bash tar -xjf NT98331_SDK_release_v3.03.110_ns_glib.tar.bz2 ``` ### 🔍 参数解释: | 参数 | 含义 | |------|------| | `-x` | extract,表示“解压” | | `-j` | 表示使用 `bzip2` 解压缩(对应 .bz2) | | `-f` | 指定文件名,后面紧跟文件 | > 💡 小技巧:你可以把 `-xjf` 记作 “extract with bzip2 and file” --- ## ✅ 二、解压指定目录 默认会解压到当前目录。如果你想解压到其他目录(比如 `./sdk/`),可以加上 `-C` 参数: ```bash mkdir -p sdk tar -xjf NT98331_SDK_release_v3.03.110_ns_glib.tar.bz2 -C sdk ``` 这会把所有内容解压到 `sdk/` 目录下。 --- ## ✅ 三、查看压缩包内容(不解压) 你可以先预览里面有哪些文件,再决定是否解压: ```bash tar -tjf NT98331_SDK_release_v3.03.110_ns_glib.tar.bz2 ``` - `-t`:列出归档中的文件列表(list) - 输出示例: ``` NT98331_SDK/ NT98331_SDK/README.txt NT98331_SDK/firmware/ ... ``` --- ## 🛠️ 四、如果系统没有 bzip2 支持? 极少数精简系统可能未安装 `bzip2` 工具,你会看到错误: ``` tar: Cannot exec bzip2: No such file or directory ``` ### 解决方法:安装 bzip2 ### Ubuntu / Debian: ```bash sudo apt update sudo apt install bzip2 ``` ### CentOS / RHEL / Fedora: ```bash sudo yum install bzip2 # CentOS 7/8 # 或 sudo dnf install bzip2 # Fedora ``` 安装后即可正常使用 `tar -xjf`。 --- ## 📦 五、其他常见压缩格式对照表 | 格式 | 解压命令 | 说明 | |------|---------|------| | `.tar.gz` | `tar -xzf file.tar.gz` | 使用 gzip 压缩 | | `.tar.bz2` | `tar -xjf file.tar.bz2` | 使用 bzip2 压缩(本文) | | `.gz` | `gunzip file.gz` | 单个文件 gzip 解压 | | `.bz2` | `bunzip2 file.bz2` | 单个文件 bzip2 解压 | | `.zip` | `unzip file.zip` | 需要安装 unzip | --- ## ✅ 总结:最常用命令回顾 ```bash # 1. 解压 .tar.bz2 文件 tar -xjf filename.tar.bz2 # 2. 解压指定目录 tar -xjf filename.tar.bz2 -C /path/to/target/ # 3. 查看内容(不解压tar -tjf filename.tar.bz2 ``` > ⚠️ 注意:不要手动拆开 `.tar` 和 `.bz2`,直接用 `tar` 一键处理即可。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值