我刚刚找到了http://gruntjs.com/configuring-tasks#globbing-patterns,这是我找到的最有用的参考资料。
我一直看到:
有关glob模式语法的更多信息,请参见node-glob和minimatch文档。
然而,我似乎找不到语法/用法的详尽列表。这些测试可能是最好的参考,但仍然不容易破译。
看来我一定是错过了一些重要的文档来源。
我想知道在以下几个方面的区别:
path
path/
path/*
path/*.*
path/**
path/**/
path/**/*
path/**/*.*以及我可能忽略的任何其他重要的变化。我猜想这在执行node-glob样式匹配('public/**/*.*')和.gitignore (node_modules)时应用不同,因为在前者中,需要显式地包含所有东西,很多层深,而在gitignore中,这是通过忽略任何目录自动处理的。这是正确的吗?
发布于 2014-10-22 11:11:30
首先,我从未使用过node-glob或minimatch库。但也许我还能帮上忙。glob模式匹配有一种已知的语法,但坦率地说,在Google中快速搜索没有显示任何简短和清晰的内容。也许这- http://hgbook.red-bean.com/read/file-names-and-pattern-matching.html#id381184 -是我找到的最好的资源。维基百科上的这篇文章是详尽无遗的,无法阅读-- (方案编制)。
简而言之,IMHO用于节点-glob
* -表示文件名的任意数量的字符,但不能代表/** -与*相同,但跨越文件夹边界[abxy] -可以从列表中替换任何一个字符;[0-9]可以代表任何数字因此,对于您的例子:
path/* - path中的所有文件和文件夹都不回发path/** - path中的每一件事path/*.* -所有文件和文件夹的点名;匹配a.txt,.hidden,noextension.,folder.out,.来自minimatch文档-- https://github.com/isaacs/minimatch --它也是这样做的,但是使用了正则表达式的更丰富和稍微困难的语法。你可以在这里寻找一个综合的参考- regexp.asp。简而言之,path/.*代表路径下面的任何内容,但不清楚是否递归。你可能会测试它。
https://stackoverflow.com/questions/24222093
复制相似问题