用户友好的glob匹配
用户友好的 glob 匹配
基于 fast-glob,但增加了许多实用功能。
['foo*', '!foobar']['!foobar'] → 匹配除 foobar 之外的所有文件foo → foo/**/*.gitignore 及类似的忽略配置文件URL 作为 cwdnpm install globby├── unicorn
├── cake
└── rainbowimport {globby} from 'globby';
const paths = await globby(['*', '!cake']);
console.log(paths);
//=> ['unicorn', 'rainbow']请注意,glob 模式只能包含正斜杠,不能包含反斜杠,因此如果你想从路径组件构建 glob 模式,需要使用 path.posix.join() 而不是 path.join()。
Windows: 包含反斜杠的模式会静默失败。请使用 path.posix.join() 或 convertPathToPattern()。
返回一个匹配路径的 Promise<string[]>。
类型:string | string[]
查看支持的 minimatch 模式。
类型:object
除了以下选项外,另请参阅 fast-glob 选项。
类型:boolean | string[] | object
默认值:true
如果设置为 true,globby 将自动为你匹配目录。如果你定义了一个 Array,它将只匹配该 Array 中模式对应的文件。你也可以像下面这样定义一个包含 files 和 extensions 的 object:
import {globby} from 'globby';
const paths = await globby('images', {
expandDirectories: {
files: ['cat', 'unicorn', '*.jpg'],
extensions: ['png']
}
});
console.log(paths);
//=> ['cat.png', 'unicorn.png', 'cow.jpg', 'rainbow.jpg']请注意,如果你将此选项设置为 false,除非你设置了 onlyFiles: false,否则你将无法获取匹配到的目录。
类型:boolean
默认值:false
尊重 .gitignore 文件中适用于被匹配文件的忽略模式。
启用后,g
暂无开放 Issues,或尚未同步最近议题。