linux tar命令基础介绍
tar命令是linux系统中用于创建、查看和解压归档文件的工具,最初设计用于将文件打包到磁带存档(tape archive)中,因此得名tar。它支持多种压缩格式,比如gzip、bzip2、xz等,是linux环境下文件备份和传输的常用工具。
tar命令基本语法
tar命令的基本语法格式如下:
tar [选项] [归档文件] [文件或目录列表]
常用的选项参数可以分为几类,以下是核心参数的说明:
| 参数 | 含义 |
|---|---|
| -c | 创建新的归档文件 |
| -x | 从归档文件中提取文件 |
| -t | 列出归档文件中的内容 |
| -f | 指定归档文件的名称,这个参数必须放在所有选项的最后 |
| -v | 显示操作过程的详细信息 |
| -z | 使用gzip格式压缩或解压 |
| -j | 使用bzip2格式压缩或解压 |
| -J | 使用xz格式压缩或解压 |
| -C | 指定解压文件的目标目录 |
常见使用场景示例
1. 打包文件不压缩
将当前目录下的test_dir目录打包成test.tar归档文件,不压缩:
# 打包test_dir目录到test.tar tar -cvf test.tar test_dir
2. 打包并压缩为gzip格式
将test_dir目录打包并用gzip压缩,生成test.tar.gz文件:
# 打包并gzip压缩 tar -czvf test.tar.gz test_dir
3. 打包并压缩为bzip2格式
使用bzip2压缩率更高,但是压缩速度稍慢,生成test.tar.bz2文件:
# 打包并bzip2压缩 tar -cjvf test.tar.bz2 test_dir
4. 解压tar归档文件
解压test.tar文件到当前目录:
# 解压tar归档文件 tar -xvf test.tar
5. 解压tar.gz压缩文件
解压test.tar.gz文件到当前目录:
# 解压gzip压缩的tar文件 tar -xzvf test.tar.gz
6. 解压到指定目录
将test.tar.gz文件解压到/opt目录下:
# 解压到指定目录,需要目录提前存在 tar -xzvf test.tar.gz -C /opt
7. 查看归档文件内容
不解压直接查看test.tar.gz文件里的文件列表:
# 查看压缩归档文件的内容 tar -tzvf test.tar.gz
8. 打包时排除指定文件
打包test_dir目录,排除里面的log子目录:
# 打包时排除指定目录 tar -czvf test.tar.gz test_dir --exclude=test_dir/log
注意事项
- 使用
-f参数时,必须紧跟归档文件名,通常把-f放在所有参数的最后,避免参数顺序错误导致命令执行失败。 - 解压文件时如果目标目录不存在,需要先手动创建目录,否则会报错。
- 不同的压缩格式对应不同的参数,gzip对应
-z,bzip2对应-j,xz对应-J,不要混淆使用。 - 如果是从windows拷贝到linux的压缩文件,可能存在编码问题,解压时如果出现乱码,可以尝试添加
--encoding=utf-8参数指定编码。
linuxtar命令压缩解压tar_archive修改时间:2026-06-19 13:21:23