摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。經(jīng)常,我們的程序需要對(duì)磁盤(pán)文件進(jìn)行管理,就需要讀取磁盤(pán)上的文件列表,然后可能會(huì)需要判斷文件夾或文件名,還可能需要遞歸掃描子目錄。今天我們要了解的庫(kù),就是專(zhuān)門(mén)用來(lái)掃描磁盤(pán)文件,并返回我們需要的文件類(lèi)型。
NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。
經(jīng)常,我們的程序需要對(duì)磁盤(pán)文件進(jìn)行管理,就需要讀取磁盤(pán)上的文件列表,然后可能會(huì)需要判斷文件夾或文件名,還可能需要遞歸掃描子目錄。
glob今天我們要了解的庫(kù) glob,就是專(zhuān)門(mén)用來(lái)掃描磁盤(pán)文件,并返回我們需要的文件類(lèi)型。
const glob = require("glob") glob("**/*.js", function (error, files) { // files 就是我們得到的文件的列表 })
上述代碼中,我們會(huì)遞歸查找當(dāng)前目錄下的所有.js 文件,因?yàn)槲覀兪褂昧?**/*.js 通配符做查找條件。
glob 支持的通配符模式glob 支持強(qiáng)大的匹配規(guī)則,但是要注意glob的匹配規(guī)則并不是正則表達(dá)式,詳細(xì)支持如下:
* 匹配0到多個(gè)字符
? 匹配一個(gè)字符
[...] 匹配一個(gè)字符列表,類(lèi)似正則表達(dá)式的字符列表
!(pattern|pattern|pattern) 反向匹配括號(hào)內(nèi)的模式
?(pattern|pattern|pattern) 匹配0或1個(gè)括號(hào)內(nèi)的模式
+(pattern|pattern|pattern) 匹配至少1個(gè)括號(hào)內(nèi)的模式
*(pattern|pattern|pattern) 匹配0到多個(gè)括號(hào)內(nèi)的模式
@(pattern|pat*|pat?erN) 精確匹配括號(hào)內(nèi)的模式
** 匹配0到多個(gè)子目錄,遞歸匹配子目錄
其他特性除下上文中的異步接口,glob還支持 glob.sync() 同步接口,另外,glob還支持大量的參數(shù)選項(xiàng),比如cwd,root 等等,具體請(qǐng)參考官方文檔。
參考文檔glob: https://github.com/isaacs/nod...
歡迎關(guān)注公眾號(hào):梁興臣每天了解一個(gè)NPM庫(kù),一年后成為Node.js高手
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/90728.html
摘要:前兩天,我們學(xué)習(xí)了中模式匹配文件列表的和的增強(qiáng)版,今天,我們將了解的基礎(chǔ)庫(kù),用來(lái)模式匹配字符串的庫(kù)。 前兩天,我們學(xué)習(xí)了Node.js中模式匹配文件列表的 glob 和 glob 的增強(qiáng)版globby,今天,我們將了解 glob 的基礎(chǔ)庫(kù): minimatch,用來(lái)模式匹配字符串的庫(kù)。 其實(shí),glob庫(kù)支持的的各種模式都來(lái)自于minimatch。 minimatch 的用法 const...
摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。昨天,我們學(xué)習(xí)了一個(gè)新庫(kù),用于模式匹配目錄文件。今天,我們要了解的,是基于,并進(jìn)一步得到了增強(qiáng)了功能。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。 昨天,我們學(xué)習(xí)了一個(gè)新庫(kù) glob,用于模式匹配目錄文件。今天,我們要了解的globby,是基于 glob,并進(jìn)一步得到了增強(qiáng)了功能。 globby 特性 相對(duì)于 glob,globby有以下增強(qiáng)功能 ...
摘要:酷庫(kù),每天兩分鐘,了解一個(gè)流行庫(kù)。像等工具都提供模式,當(dāng)磁盤(pán)文件變化后自動(dòng)重新運(yùn)行打包。今天我們要學(xué)習(xí)的就是一款專(zhuān)門(mén)用于文件監(jiān)控的庫(kù)??梢员O(jiān)控各種文件文件夾變化事件,包含等。 NPM酷庫(kù),每天兩分鐘,了解一個(gè)流行NPM庫(kù)。 像 webpack / grunt /gulp 等工具都提供watch模式,當(dāng)磁盤(pán)文件變化后自動(dòng)重新運(yùn)行打包。今天我們要學(xué)習(xí)的chokidar就是一款專(zhuān)門(mén)用于文件監(jiān)...
摘要:通常情況下我們不需要用到。為任務(wù)名請(qǐng)不要在名字中使用空格是當(dāng)前定義的任務(wù)需要依賴(lài)的其他任務(wù),為一個(gè)數(shù)組。為要監(jiān)視的文件匹配模式,規(guī)則和用法與方法中的相同。 1.gulp安裝 1.首先確保你已經(jīng)正確安裝了nodejs環(huán)境。然后可以全局方式安裝gulp: $ npm install -g gulp 我們可以檢查一下gulp版本 $ gulp -v 這樣就完成了對(duì)全局的安裝2.如果想在安裝的...
摘要:通常情況下我們不需要用到。為任務(wù)名請(qǐng)不要在名字中使用空格是當(dāng)前定義的任務(wù)需要依賴(lài)的其他任務(wù),為一個(gè)數(shù)組。為要監(jiān)視的文件匹配模式,規(guī)則和用法與方法中的相同。 1.gulp安裝 1.首先確保你已經(jīng)正確安裝了nodejs環(huán)境。然后可以全局方式安裝gulp: $ npm install -g gulp 我們可以檢查一下gulp版本 $ gulp -v 這樣就完成了對(duì)全局的安裝2.如果想在安裝的...
閱讀 2487·2021-10-09 09:41
閱讀 3460·2021-09-26 09:46
閱讀 987·2021-09-03 10:34
閱讀 3270·2021-08-11 11:22
閱讀 3471·2019-08-30 14:12
閱讀 803·2019-08-26 11:34
閱讀 3416·2019-08-26 11:00
閱讀 1862·2019-08-26 10:26