Linux 下压缩文件夹命令行全攻略,从入门到精通

admin

在 Linux 系统中,无论是服务器运维还是本地开发,我们经常需要将大量的文件或文件夹打包压缩,以节省磁盘空间或方便数据传输,虽然图形界面提供了压缩功能,但在服务器环境下,熟练掌握Linux 下压缩文件夹命令行是每一位开发者必备的技能。

本文将详细介绍 Linux 中最常用的三种压缩命令:tar.gzzip7z,并附带参数解析和常见注意事项。


最经典的格式:tar.gz

.tar.gz 是 Linux 下最标准、兼容性最好的压缩格式,它结合了 tar(打包)和 gzip(压缩)两种功能。

Linux 下压缩文件夹命令行全攻略,从入门到精通

命令格式:

tar -czvf 压缩包名.tar.gz 要压缩的文件夹路径

参数详解:

  • -c:create,创建一个新的压缩包。
  • -z:gzip,调用 gzip 进行压缩。
  • -v:verbose,显示压缩过程的详细信息(推荐加上,可以看到文件正在被处理)。
  • -f:file,指定文件名(注意:-f 参数必须放在其他参数的最后面)。

实战示例: 假设我们要压缩当前目录下的 data 文件夹,生成一个名为 backup.tar.gz 的文件:

tar -czvf backup.tar.gz data/

解压命令(顺便提一下):

tar -xzvf backup.tar.gz

Windows 兼容的格式:zip

如果你需要将文件发送给 Windows 用户,或者在不同操作系统之间传输,.zip 格式是最方便的,因为它不需要安装额外的解压工具即可打开。

命令格式:

zip -r 压缩包名.zip 要压缩的文件夹路径

参数详解:

  • -r:recursive,递归处理,表示将指定目录下的所有文件和子目录一起压缩,如果不加 -rzip 默认只压缩当前目录下的文件,不会深入子目录。

实战示例: 压缩 project 文件夹为 project.zip

zip -r project.zip project/

解压命令:

unzip project.zip

高压缩率的格式:7z

如果你追求极致的压缩率,希望生成的文件体积最小,7z 格式是首选,它的压缩算法非常先进,通常比 tar.gz 再压缩 20%-30%。

命令格式:

7z a 压缩包名.7z 要压缩的文件夹路径

参数详解:

  • a:add,添加文件到压缩包中。

实战示例: 压缩 source 文件夹为 source.7z

7z a source.7z source/

解压命令:

7z x source.7z

常见避坑指南

在使用 Linux 命令行压缩时,有几个细节非常容易出错:

  1. 路径的区别

    • tar -czvf backup.tar.gz data:只会压缩当前目录下的 data 文件夹。
    • tar -czvf backup.tar.gz ./data:效果同上。
    • tar -czvf backup.tar.gz /home/user/data:会将 /home/user/data 里面的内容解压到根目录下(非常危险!),而不是压缩整个路径。
    • 建议:尽量使用相对路径,或者确保目标路径正确。
  2. 特殊字符的处理: 如果你的文件夹名称中包含空格或特殊符号(如 My Files (2023)),建议给文件夹名加上引号,防止命令解析错误:

    tar -czvf backup.tar.gz "My Files"
  3. 安装依赖: 如果

文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码