命令行压缩与解压常用参数汇总

2025.7.18 杂七杂八 1593
33BLOG智能摘要
文章汇总了作者在使用命令行进行压缩与解压操作时积累的实用参数和经验,帮助开发者减少文件传输中的问题。作者推荐了几个常用工具及其关键参数组合:`tar` 工具使用 `czvf` 参数(`c` 创建,`z` 用 gzip 压缩,`v` 显示过程,`f` 指定文件)可有效打包目录,`--exclude` 可忽略特定文件;`zip` 工具适合与 Windows 用户协作,`-qr` 参数可安静模式下递归压缩目录,`-X` 可保留文件权限;`7z` 支持高压缩比的 `-mx=9` 以及分卷压缩的 `-v100m`,成功将 30G 文件压缩为 3G 提高传输效率。文章还提醒在解压前先查看包内容、处理文件名含空格时使用引号、跨平台时使用 `-O GBK` 处理编码问题。作者总结出适用于不同场景的组合方式,并表示熟练掌握参数后,压缩文件处理效率提升了约 70%。
— 此摘要由33BLOG基于AI分析文章内容生成,仅供参考。

命令行压缩解压指南:这些参数让我少掉50%头发

命令行压缩与解压常用参数汇总

作为一个常年和服务器打交道的码农,我敢说80%的服务器问题都出在文件传输环节。今天就来分享下这些年我用命令行压缩解压文件时,那些真正救命的参数组合。相信我,掌握这些能让你少走很多弯路。

1. tar:老当益壮的打包工具

第一次用tar时,我完全记不住那些参数顺序,直到发现这个记忆口诀:”create zip verbose file”(创建压缩包时用czvf)。比如要把整个目录打包:

# 压缩
tar -czvf project.tar.gz ./project

# 解压(x表示extract)
tar -xzvf project.tar.gz

实际使用时我经常加上--exclude参数忽略垃圾文件:

tar -czvf backup.tar.gz --exclude='*.log' --exclude='tmp/*' ./data

2. zip/unzip:Windows友好型选手

有次给Windows同事传文件,用tar打包结果对方打不开,从此我学会了zip的妙用。压缩时用-r递归目录,-q安静模式特别实用:

# 安静模式压缩(不显示进度)
zip -qr archive.zip ./folder

# 解压到指定目录
unzip archive.zip -d /target/path

踩坑提醒:zip默认不保留Linux文件权限,需要加-X参数保留UID/GID。

3. 7z:压缩界的性能怪兽

当我需要极致压缩比时,7z就成了首选。虽然命令稍复杂,但-mx=9的极限压缩效果惊人:

# 极限压缩(耗时但体积小)
7z a -t7z -mx=9 archive.7z ./big_data

# 分卷压缩(适合大文件传输)
7z a -v100m split_files.7z ./huge_file

有次用这个参数把30G的日志压缩到3G,传输时间从2小时降到15分钟,老板看我的眼神都不一样了。

4. 那些让我翻车的场景

说几个血泪教训:

  • 解压时永远先看内容tar -tf archive.tar.gz,有次直接解压把文件覆盖了
  • 文件名含空格要用引号:unzip "my file.zip"
  • 跨平台时注意编码:unzip -O GBK windows_file.zip

5. 我的常用组合拳

最后分享我的万能套路:

  1. 本地测试用:tar -czvf(速度快)
  2. 网络传输用:7z -mx=5(平衡模式)
  3. 给Windows用户:zip -r+-e加密(如需密码)

记住这些参数后,我现在处理压缩文件的时间缩短了至少70%。如果你也有私藏的参数技巧,欢迎在评论区交流!

评论

  • 太需要这个了!每次tar的参数都记不住,这个口诀太实用了