tar 是 Linux 中最常用的归档 / 压缩命令 ,全称 tape archive(磁带归档),核心作用是:将多个文件 / 目录打包成一个文件,也可结合 gzip、bzip2 等算法压缩,还能解压、查看包内容。
一、核心语法
tar [选项] [目标文件] [源文件/目录]
二、最常用选项(必记)
| 选项 | 作用 |
|---|---|
-c |
创建新的归档包(打包必备) |
-x |
解压归档包(解压必备) |
-v |
显示详细执行过程(可视化) |
-f |
指定归档文件名(必须放在所有选项最后) |
-z |
用 gzip 压缩 / 解压(后缀 .tar.gz) |
-j |
用 bzip2 压缩 / 解压(后缀 .tar.bz2) |
-t |
查看包内文件(不解压) |
-C |
指定解压到的目录 |
三、高频实用命令(直接复制用)
1. 打包 + 压缩(最常用:.tar.gz 格式)
gzip 压缩速度快、使用率最高,推荐优先用:
# 格式:tar -zcvf 压缩包名.tar.gz 要打包的文件/目录
tar -zcvf test.tar.gz /home/user/doc
- 作用:将
/home/user/doc目录打包并压缩为test.tar.gz
2. 仅打包(不压缩)
只合并文件,不压缩体积:
tar -cvf test.tar /home/user/doc
3. 解压文件(万能用法)
无需区分压缩格式 ,tar 会自动识别:
# 解压到当前目录
tar -xvf test.tar.gz
tar -xvf test.tar
tar -xvf test.tar.bz2
4. 解压到指定目录
# 解压到 /tmp 目录下
tar -xvf test.tar.gz -C /tmp
5. 查看压缩包内文件(不解压)
tar -tvf test.tar.gz
6. bzip2 压缩 / 解压(高压缩比,速度慢)
后缀 .tar.bz2,压缩后体积更小:
# 压缩
tar -jcvf test.tar.bz2 /home/user/doc
# 解压
tar -jxvf test.tar.bz2
四、必懂规则(避免报错)
-
-f必须放在选项最后 ✅ 正确:tar -zcvf test.tar.gz doc❌ 错误:tar -zcfv test.tar.gz doc -
打包绝对路径时,tar 会自动去掉根目录
/,安全无风险。 -
常用组合速记:
- 压缩:
-zcvf - 解压:
-xvf - 查看:
-tvf
- 压缩: