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