压缩文件夹时用 -x 排除指定文件

一条命令打包目录,同时跳过日志、缓存和 .git 等无用文件。

macOS压缩与归档文件归档低风险
在 zip -r 命令后面加 -x 和带引号的匹配模式,即可排除相应文件。

01命令

命令
$ zip -r project.zip ~/Desktop/Project/ -x "*.log" "*.DS_Store" "*/.git/*"

02作用说明

模式匹配的是压缩包内部存储的路径,所以 "*/.git/*" 能去掉整个 git 目录,"*.log" 能去掉任意层级的日志。每个模式都要加引号,否则 shell 会提前展开。不用先复制一份再删文件,一条命令就能打出干净的项目包。

03风险

风险低风险
!注意: 被排除的文件在磁盘上原样保留,只是不进压缩包。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • zip – Package and compress files
    ss64.com · technical · 2026-09-17
    依据: zip -x excludes paths matching the given shell patterns; patterns match the paths as stored inside the archive.

最后验证: 2026-09-18 · 分类: 文件与文件夹

06相关方案