Node.jsでglobモジュールでワイルドカード指定する方法とディレクトリ除外する方法

Node.jsでglobモジュールでワイルドカード指定する方法とディレクトリ除外する方法

globモジュールを使ってワイルドカード指定して検索にマッチした複数ファイルを配列で返すことができます。

const glob = require('glob');
glob('*',{'ignore':['node_modules']}, function(err, files){
if(err) {
console.log(err)
}
console.log(files) // [ 'index.js', 'package-lock.json', 'package.json' ]
})

view raw
gistfile1.txt
hosted with ❤ by GitHub

globの第二引数で{'ignore':['ディレクトリ名']}とすると、そのディレクトリとディレクトリ配下を除外することができます。

globbyモジュールならPromiseAPIサポート

globよりglobbyモジュールを使えばPromiseサポートしています。

globbyなら第一引数が配列になり、配列の要素ごとにワイルドカード指定、除外するファイルやディレクトリを指定できるのでわかりやすいと思います。

const globby = require('globby');
async function find() {
const p = await globby(['**', '!node_modules']);
console.log(JSON.stringify(p));
}
find();

view raw
gistfile1.txt
hosted with ❤ by GitHub

ワイルドカード 意味
**/* ディレクトリ含む全てのファイル
* ディレクトリ除く全てのファイル
!ファイル名 ファイル名を除く
!ディレクトリ名 ディレクトリ含む全てのファイルを除く
  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA