上一篇
"明天就要交项目了,但分散在十几个文件夹的代码和文档怎么发给客户?"
"服务器磁盘告警,但日志文件又不敢直接删除..."
遇到这些情况别慌!Linux自带的tar
命令就是你的救星💫,作为20多年经久不衰的打包工具,它既能压缩省空间,又能保留文件权限,今天我们就用最直白的语言+实用场景,彻底掌握这个终端利器!
# 1️⃣ 打包压缩文件夹(经典操作) tar -czvf 打包名.tar.gz 要压缩的文件夹/ # 2️⃣ 解压到当前目录 tar -xzvf 打包文件.tar.gz # 3️⃣ 查看压缩包内容(不解压) tar -tzvf 打包文件.tar.gz # 4️⃣ 指定解压路径 tar -xzvf 打包文件.tar.gz -C 目标路径/
✨ 参数解析:
-c
创建压缩包 |-x
解压-z
用gzip压缩(会生成.tar.gz)-v
显示过程(verbose)|-f
指定文件名-t
查看内容 |-C
指定解压目录
# 打包时保留原文件权限(适合备份重要数据) tar -czpvf backup_$(date +%Y%m%d).tar.gz /var/www/html/
📝 这里的
-p
参数会保留文件原始权限,$(date)
自动添加当前日期
# 将10GB视频文件夹分割成每个2GB的压缩包 tar -cvzf - 电影合集/ | split -b 2G - 电影合集.tar.gz.
💡 生成类似
电影合集.tar.gz.aa
、电影合集.tar.gz.ab
的文件,合并时用cat 电影合集.tar.gz.* | tar -xvzf -
# 打包时跳过.log和.tmp文件 tar -czvf project.tar.gz --exclude='*.log' --exclude='*.tmp' my_project/
命令 | 压缩格式 | 速度 | 压缩率 | 典型用途 |
---|---|---|---|---|
tar -czvf |
.tar.gz | 中等 | 高 | 通用压缩 |
tar -cjvf |
.tar.bz2 | 慢 | 更高 | 追求极致压缩 |
tar -cJvf |
.tar.xz | 最慢 | 最高 | 分发大型文件 |
tar -cvf + 7zip |
.tar.7z | 可变 | 极高 | Windows兼容需求 |
# 创建加密压缩包(会提示输入密码) tar -czvf - 敏感文件/ | gpg -c > 秘密档案.tar.gz.gpg
# 比较压缩包和当前文件夹差异 diff <(tar -tzvf old.tar.gz | sort) <(find ./ -type f | sort)
-f
参数tar -czv backup.tar.gz documents/ # 错误! tar -czvf backup.tar.gz documents/ # 正确
💥 系统会报错:"tar: Refusing to write archive contents to terminal"
tar -xzvf data.tar.gz -C /non_exist_folder/ # 报错! mkdir -p /non_exist_folder && tar -xzvf data.tar.gz -C /non_exist_folder # 正确
# 打包时指定UTF-8编码 tar -czvf --format=posix --owner=0 --group=0 -H ustar 项目.tar.gz 项目/
--fast
参数(但压缩率会降低)⚡ --checkpoint=.100
每100文件打印一个点 下次遇到文件打包需求时,记得掏出这份指南🗂️,熟练掌握tar命令后,你会发现很多图形界面工具反而显得笨拙了呢! 🚀
(本文操作验证于Linux内核5.15+环境,2025年8月仍适用)
本文由 尹文思 于2025-08-02发表在【云服务器提供商】,文中图片由(尹文思)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/511222.html
发表评论