核心功能与语法
基本语法:tar [选项] [文件名] [文件/目录列表]
- 常用选项组合:
-c
:创建新归档文件-x
:解压归档文件-v
:显示操作过程(verbose)-f
:指定文件名(必须紧跟文件名)-z
:通过gzip压缩/解压(.tar.gz或.tgz)-j
:通过bzip2压缩/解压(.tar.bz2)-J
:通过xz压缩/解压(.tar.xz)-t
:查看归档内容
常用操作示例
打包与压缩
- 打包目录(不压缩):
tar -cvf archive.tar /path/to/directory
- 打包并gzip压缩:
tar -czvf archive.tar.gz /path/to/directory
- 打包并bzip2压缩:
tar -cjvf archive.tar.bz2 /path/to/directory
解压操作
- 解压到当前目录:
tar -xvf archive.tar
- 解压gzip压缩包:
tar -xzvf archive.tar.gz
- 解压到指定目录(用
-C
):tar -xzvf archive.tar.gz -C /target/directory
查看归档内容
tar -tvf archive.tar.gz # 列出压缩包内文件详情
追加文件到已有归档
tar -rvf archive.tar newfile.txt # 仅适用于未压缩的.tar文件
排除特定文件
tar -czvf backup.tar.gz --exclude="*.log" /path/to/directory
高级技巧
-
增量备份:
tar -g snapshot.snar -czvf backup-incremental.tar.gz /data
-g
记录快照,后续备份仅添加修改过的文件。 -
保留文件权限(
-p
):tar -czvpf backup.tar.gz /etc # 解压时自动恢复原始权限
-
多文件合并:
tar -Af archive1.tar archive2.tar # 将archive2.tar合并到archive1.tar
注意事项与常见问题
-
选项顺序:
-f
必须紧跟文件名(如tar -czvf 文件.tar.gz
正确,tar -czfv
错误)。 -
解压路径安全:
解压前用-t
,避免恶意路径覆盖系统文件(如路径含)。 -
压缩效率对比:
| 压缩类型 | 速度 | 压缩率 | 适用场景 |
|———-|——|——–|——————-|
|gzip
| 快 | 中等 | 日常备份(.tar.gz)|
|bzip2
| 慢 | 高 | 高压缩需求(.tar.bz2)|
|xz
| 最慢 | 最高 | 长期存储(.tar.xz)| -
解压报错处理:
tar: Error is not recoverable
→ 文件损坏或非tar格式。tar: Removing leading '/'
→ 为安全移除了绝对路径前缀,解压后检查路径。
Tar命令是服务器管理、数据备份的必备工具,掌握其参数组合(如-czvf
)可大幅提升效率,关键原则:
- 操作前确认路径和文件名,避免覆盖重要文件。
- 重要数据解压前先用
-t
。 - 长期存储推荐
xz
压缩,日常使用选gzip
平衡速度与压缩率。
引用说明基于Linux man-pages(tar v1.34)、GNU Tar官方文档及Sysadmin实践经验总结,操作前请通过
man tar
查看系统手册确认兼容性。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6794.html