本文详细介绍了在Ubuntu系统中使用命令行解压各类tar文件的完整攻略,核心工具为tar命令,文章重点讲解了针对.tar、.tar.gz、.tar.bz2及.tar.xz等不同格式所需的特定参数(如-z、-j、-J),解释了-x(解压)、-v(显示详情)、-f(指定文件)等关键选项的含义,并演示了如何使用-C参数将文件解压到指定目录,旨在帮助用户快速掌握Linux下的文件解压技巧。
在Ubuntu及其他Linux发行版中,tar是最常用的文件归档与压缩工具之一,它不仅能将多个文件或目录合并成一个单一的“归档文件”(archive),还能配合压缩算法(如gzip、bzip2、xz等)减小文件体积,掌握tar命令行的解压方法,是高效管理Linux文件的必备技能,本文将详细介绍Ubuntu下使用tar命令行解压各种格式文件的完整操作。
tar命令基础:什么是tar?
tar(Tape Archive,磁带归档)最初用于将文件备份到磁带,如今已成为Linux/Unix系统中标准的文件归档格式,其核心特点是:
- 归档:将多个文件/目录合并为一个文件,保留原始文件属性(权限、时间戳等)。
- 压缩:可结合
gzip(.tar.gz/.tgz)、bzip2(.tar.bz2)、xz(.tar.xz)等压缩算法,进一步减小文件体积。
在Ubuntu中,tar命令通常已预装,无需额外安装。

核心解压参数解析
要使用tar解压文件,需先理解其常用参数,以下是最关键的解压相关参数:
| 参数 | 全称 | 作用说明 |
|---|---|---|
-x |
extract | 解压模式:从归档文件中提取文件/目录(核心参数)。 |
-f |
file | 指定文件:后跟归档文件名,如-f example.tar.gz(必须放在参数末尾)。 |
-v |
verbose | 显示详情:列出解压过程中的文件名,方便查看进度(可选)。 |
-C |
directory | 指定目录:将文件解压到指定路径,如-C /home/user/backup(可选)。 |
-z |
gzip | 处理gzip压缩:针对.tar.gz/.tgz文件,自动调用gzip解压。 |
-j |
bzip2 | 处理bzip2压缩:针对.tar.bz2文件,自动调用bzip2解压。 |
-J |
xz | 处理xz压缩:针对.tar.xz文件,自动调用xz解压(注意J大写)。 |
常见tar文件格式解压实战
根据压缩算法不同,tar文件可分为多种格式,解压时需选择对应参数,以下是Ubuntu中最常见的三种格式解压方法:
解压.tar.gz/.tgz文件(gzip压缩)
.tar.gz是最常见的tar压缩格式,由tar归档后经gzip压缩生成。
基本命令:
tar -xzvf filename.tar.gz
-x:解压-z:处理gzip压缩-v:显示解压文件列表-f:指定文件名
示例:
解压documents.tar.gz到当前目录:
tar -xzvf documents.tar.gz
解压到指定目录:
若需将文件解压到/home/user/backup目录:
tar -xzvf documents.tar.gz -C /home/user/backup
解压.tar.bz2文件(bzip2压缩)
.tar.bz2是使用bzip2算法压缩的格式,压缩率比gzip更高,但速度稍慢。
基本命令:
tar -xjvf filename.tar.bz2
-j:替代-z,用于处理bzip2压缩。
示例:
解压archive.tar.bz2到当前目录:
tar -xjvf archive.tar.bz2
解压到指定目录:
tar -xjvf archive.tar.bz2 -C /opt/data
解压.tar.xz文件(xz压缩)
.tar.xz是使用xz算法压缩的格式,压缩率最高,但耗时较长,常用于大型软件包或镜像文件。
基本命令:
tar -xJvf filename.tar.xz
-J:注意必须大写,用于处理xz压缩。
示例:
解压software.tar.xz:
tar -xJvf software.tar.xz
解压到指定目录:
tar -xJvf software.tar.xz -C /usr/local/src
解压无压缩的.tar文件(纯归档)
若文件仅是tar归档(未压缩,后缀为.tar),无需-z/-j/-J参数。
基本命令:
tar -xvf filename.tar
示例:
解压project.tar:
tar -xvf project.tar
进阶操作技巧
仅查看压缩包内容,不解压
若需确认压缩包内文件,不想立即解压,可通过-t(list)参数实现:
查看.tar.gz内容:
tar -tzvf filename.tar.gz
查看.tar.bz2内容:
tar -tjvf filename.tar.bz2
查看.tar.xz内容:
tar -tJvf filename.tar.xz
查看纯.tar内容:
tar -tvf filename.tar
解压时保留文件权限(默认行为)
tar默认会保留文件的原始权限(如755、644等),无需额外参数,若遇到权限问题(如解压后文件不可执行),可检查文件原始权限:
# 查看压缩包内文件的权限(结合-t参数)
tar -tvf filename.tar.gz | awk '{print 
