1

我正在尝试使用Archiver压缩目录。我想以递归方式排除某些目录或文件,例如node_modules

例如,如果我有这样的目录结构:

folder-to-compress
| node_modules
| sub-folder
  | ignored-file-name
  | included-file-name
| ignored-file-name

下面的脚本仅从根级别排除。所以ignored-file-name在 root 中不会包含在 zip 中,但sub-folder/ignored-file-name会包含在内。我想知道是否有办法递归排除?

const fs = require('fs');
const archiver = require('archiver');

const output = fs.createWriteStream(__dirname);
const archive = archiver('zip', { zlib: { level: 9 } });

archive.pipe(output);

archive.glob('*/**', {
   cwd: __dirname,
   ignore: ['mode_modules', 'ignored-file-name', '*.zip']
});

archive.finalize();
4

0 回答 0