Linux 中 tar 命令的详细使用指南
tar (tape archive) 是 Linux 中最常用的归档工具,可以将多个文件或目录打包成一个文件(归档),并可选择使用不同的压缩算法进行压缩。
基本语法
tar [选项] [归档文件名] [要归档的文件/目录...]
常用操作
1. 创建归档文件
# 创建归档但不压缩
tar -cvf archive.tar file1 file2 dir1
# 创建并使用gzip压缩
tar -czvf archive.tar.gz file1 file2 dir1
# 创建并使用bzip2压缩
tar -cjvf archive.tar.bz2 file1 file2 dir1
# 创建并使用xz压缩
tar -cJvf archive.tar.xz file1 file2 dir1
2. 解压归档文件
# 解压普通tar归档
tar -xvf archive.tar
# 解压gzip压缩的归档
tar -xzvf archive.tar.gz
# 解压bzip2压缩的归档
tar -xjvf archive.tar.bz2
# 解压xz压缩的归档
tar -xJvf archive.tar.xz
3. 查看归档内容
# 查看归档内容但不解压
tar -tvf archive.tar
# 查看gzip压缩的归档内容
tar -tzvf archive.tar.gz
常用选项详解
| 选项 | 说明 |
|---|---|
-c | 创建新的归档文件 |
-x | 从归档中提取文件 |
-t | 列出归档内容 |
-v | 显示详细过程 (verbose) |
-f | 指定归档文件名 (必须放在最后) |
-z | 使用gzip压缩/解压 |
-j | 使用bzip2压缩/解压 |
-J | 使用xz压缩/解压 |
-r | 向归档追加文件 |
-u | 只添加比归档中更新的文件 |
-C | 解压到指定目录 |
--exclude | 排除特定文件或模式 |
--wildcards | 使用通配符匹配文件 |
实用示例
1. 创建归档时排除特定文件
tar -czvf backup.tar.gz --exclude='*.tmp' --exclude='cache/*' /path/to/dir
2. 解压到指定目录
tar -xzvf archive.tar.gz -C /target/directory
3. 向已有归档添加文件
tar -rvf archive.tar newfile.txt
4. 只解压归档中的特定文件
# 查看归档内容找到文件名
tar -tzvf archive.tar.gz
# 解压特定文件
tar -xzvf archive.tar.gz path/to/specific/file
5. 使用通配符解压多个文件
tar -xzvf archive.tar.gz --wildcards '*.txt'
压缩算法选择建议
-
gzip (
.tar.gz或.tgz)- 速度较快,压缩率中等
- 最广泛支持
-
bzip2 (
.tar.bz2)- 压缩率比gzip高,但速度更慢
- 适合对压缩率要求高于速度的场景
-
xz (
.tar.xz)- 最高压缩率,但速度最慢
- 适合需要最大限度减小文件大小的情况
注意事项
- 使用
-f选项时,归档文件名必须紧跟在选项后 - 选项前的
-可以省略(传统Unix风格) - 创建归档时,路径问题要注意,避免在解压时产生很长的路径
- 大文件压缩/解压可能需要较长时间,可以使用
pv命令查看进度
通过掌握这些 tar 命令的使用方法,你可以高效地管理Linux系统中的文件归档和压缩任务。
Linux中tar命令详细使用指南


被折叠的 条评论
为什么被折叠?



