Categories: NPM

glob を使ってファイルパスの一覧を取得

Webpack 利用時、エントリポイントの階層が複雑でどう指定しまっしょい、といった時に glob を使うと楽ちんだったりします。この記事では基本的な glob の使い方を記録しておく(2019.6.4)

環境

  • node v11.10.1
  • npm 6.7.0

インストール

$ npm install glob --save-dev

サンプル

ディレクトリ構造

src
└── js
    ├── component
    │   ├── component_a
    │   │   └── component_a.js
    │   └── component_b
    │       └── component_b.js
    └── thirdparty
        └── thirdparty_a.js

ソース

const glob = require('glob')

const getJsFiles = pattern => {
  glob(pattern, (err, files) => {
    if(err) console.log(err)
    console.log(files)
  })
}

const pattern = './src/js/**/*.js'
getJsFiles(pattern)

実行

$ node findJsFiles.js

解説

glob は Linux 系OSを使ったことのある方ならば直感的にわかると思うけど、簡単に言うと *(アスタリスク)を使って曖昧にファイルを検索することができる。

上記のソースの実行結果は以下の通り

[yakimeshi@1223 globSample]$ node findJsFiles.js
./src/js/**/*.js
[ './src/js/component/component_a/component_a.js',
  './src/js/component/component_b/component_b.js',
  './src/js/thirdparty/thirdparty_a.js' ]

配列形式で返ってくるので Webpack の entry の指定にも使えるね

chrowa3

Share
Published by
chrowa3

Recent Posts

ざっくり ECMAScript 2020

ざっくりと ES2020 のお…

3年 ago

ざっくり ECMAScript 2019

ざっくりと ES2019 のお…

3年 ago

ざっくり ECMAScript 2018

ざっくりと ES2018 のお…

3年 ago

ざっくり ECMAScript 2017

ざっくりと ES2017 のお…

3年 ago

ざっくり ECMAScript 2016

ざっくりと ES2016 のお…

3年 ago

ざっくり ECMAScript 2015

ざっくりと ES2015 のお…

3年 ago