上一篇                     
               
			  Linux怎样快速压缩文件夹?
- Linux
- 2025-06-19
- 3212
 在Linux中压缩文件夹常用命令:,1. 使用tar压缩:
 
 
tar -czvf 压缩包名.tar.gz 文件夹名,2. 使用zip压缩:
 zip -r 压缩包名.zip 文件夹名,3. 使用7z高压缩率:
 7z a 压缩包名.7z 文件夹名
核心工具:tar 命令
 
tar(Tape Archive)是 Linux 下归档文件的基石工具,通常结合压缩算法(如 gzip、bzip2、xz)使用。
基础语法: 

tar [选项] [压缩文件名] [待压缩文件夹]
压缩为 .tar.gz(gzip 格式)
 
- 特点:速度快、通用性强
- 命令: tar -czvf 压缩包名称.tar.gz 文件夹路径/ - -c:创建新压缩包
- -z:调用 gzip 压缩
- -v:显示压缩过程(可选)
- -f:指定压缩文件名
 
压缩为 .tar.bz2(bzip2 格式)
 
- 特点:压缩率高于 gzip,速度稍慢
- 命令: tar -cjvf 压缩包名称.tar.bz2 文件夹路径/ - -j:调用 bzip2 压缩
 
压缩为 .tar.xz(xz 格式)
 
- 特点:最高压缩率,适合大文件
- 命令: tar -cJvf 压缩包名称.tar.xz 文件夹路径/ - -J:调用 xz 压缩
 
其他常用压缩工具
zip 工具(跨平台兼容)
 
- 适用场景:需在 Windows/macOS 中解压
- 安装(如未预装): sudo apt install zip # Debian/Ubuntu sudo yum install zip # CentOS/RHEL 
- 压缩命令: zip -r 压缩包名称.zip 文件夹路径/ - -r:递归压缩子目录
 
7z 工具(超高压缩率)
 
- 安装: sudo apt install p7zip-full # Debian/Ubuntu sudo yum install p7zip-plugins # CentOS/RHEL 
- 压缩命令: 7z a -t7z 压缩包名称.7z 文件夹路径/ - a:添加文件到压缩包
- -t7z:指定 7z 格式(可省略)
 
高级操作技巧
排除特定文件/目录
tar -czvf backup.tar.gz --exclude='*.log' --exclude='tmp/' 文件夹路径/
- --exclude='模式':按通配符忽略文件(如- *.tmp)或目录(如- cache/)
分卷压缩大文件
tar -czvf - 文件夹路径/ | split -b 2G - 压缩包前缀.tar.gz.
- 输出 压缩包前缀.tar.gz.aa,压缩包前缀.tar.gz.ab等
- -b 2G:每卷大小设为 2GB(可调整)
保留文件权限与属性
tar -cpzvf backup.tar.gz 文件夹路径/
- -p:保留原始权限(常用于系统备份)
解压操作参考
| 压缩格式 | 解压命令 | 
|---|---|
| .tar.gz | tar -xzvf 文件.tar.gz | 
| .tar.bz2 | tar -xjvf 文件.tar.bz2 | 
| .tar.xz | tar -xJvf 文件.tar.xz | 
| .zip | unzip 文件.zip | 
| .7z | 7z x 文件.7z | 
格式选择建议
| 场景 | 推荐格式 | 理由 | 
|---|---|---|
| 快速压缩/通用传输 | .tar.gz | 速度快,兼容性极佳 | 
| 有限空间存储 | .tar.xz | 超高压缩率 | 
| 跨平台共享(非Linux) | .zip | Windows/macOS 无需额外工具 | 
| 超大文件归档 | .tar.bz2 | 平衡压缩率与资源占用 | 
注意事项
- 路径规范: 
  - 压缩时建议进入目标目录的父目录操作(避免压缩包包含冗长路径) cd /path/to/parent/ tar -czvf output.tar.gz target_folder/ 
 
- 压缩时建议进入目标目录的父目录操作(避免压缩包包含冗长路径) 
- 空间检查: 
  - 压缩前用 df -h确认磁盘空间充足
 
- 压缩前用 
- 后台运行: 
  - 耗时任务可添加 nohup或screen防止中断nohup tar -czvf large_data.tar.gz big_folder/ > log.txt & 
 
- 耗时任务可添加 
通过灵活组合这些命令,可高效完成各类文件夹压缩需求,建议根据实际场景(压缩率、时间、兼容性)选择最佳方案,复杂操作前先在小目录测试验证。

引用说明基于 GNU tar 官方文档、Linux man-pages 及 Filesystem Hierarchy Standard (FHS) 标准实践,命令测试环境为 Ubuntu 22.04/CentOS 7,核心工具均属开源生态标准组件。
 
 
 
			