3

给定目录结构:

a/
  b/
    _private/
      notes.txt
    c/
      _3.txt
      1.txt
      2.txt
    d/
      4.txt
    5.txt

如何编写选择以下路径的 glob 模式(与 npm 模块glob兼容)?

a/b/c/1.txt
a/b/c/2.txt
a/b/d/4.txt
a/b/5.txt

这是我尝试过的:

// Find matching file paths inside "a/b/"...
glob("a/b/[!_]**/[!_]*", (err, paths) => {
    console.log(paths);
});

但这只会发出:

a/b/c/1.txt
a/b/c/2.txt
a/b/d/4.txt
4

1 回答 1

3

通过一些试验和错误(以及grunt (minimatch/glob) folder exclude的帮助),我发现以下似乎达到了我正在寻找的结果:

// Find matching file paths inside "a/b/"...
glob("a/b/**/*", {
    ignore: [
        "**/_*",        // Exclude files starting with '_'.
        "**/_*/**"  // Exclude entire directories starting with '_'.
    ]
}, (err, paths) => {
    console.log(paths);
});
于 2016-01-02T19:49:00.263 回答