从命令行,如何将特定文件和目录压缩到一个压缩文件夹中?

从命令行,如何将特定文件和目录压缩到一个压缩文件夹中?

我正在如下目录中工作:

folder
  >.git
  >css
  >img
  >js
  Archive.zip
  bla.html
  bla.yml

在这个项目工作期间,我必须经常压缩这个文件夹的内容,但 Archive.zip 和 .git 目录除外(新的压缩文件夹需要替换以前的 Archive.zip 文件)。

我通过按住 Shift 键并选择相应文件 > 右键单击​​ > 压缩来执行此操作。这效率不高。

是否可以使用zip命令行中的命令来实现此目的?或者我最好编写自定义命令来执行此操作?

答案1

从该目录运行:

rm Archive.zip; zip Archive.zip -r . --exclude '.git/*'

rm 将删除旧的 Archive.zip(您需要这样做,否则 zip 将仅更新 Archive.zip 的当前内容);zip -r .将递归添加所有目录和文件夹,并将--exclude '.git/*'排除给定的目录。

相关内容