情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

Node.jsで実行しているコードが保存されているファイルの名前を取得する

2016/06/17

実行しているコードが保存されているファイルの名前を取得するには主に2つの方法があります。


1つは__filenameを使用する方法です。

__filenameには実行しているコードが保存されているファイルの名前が格納されています。


もう1つはmodule.filenameを使用する方法です。

Node.jsではモジュールの単位はファイルです。すなわち、1つのJavaScriptファイルはNode.jsでは1つのモジュールとなります。

そして、module.filenameにはモジュールのファイルの名前が格納されています。

また、実行しているコードが含まれているモジュールはmoduleに格納されています。

そのため、module.filenameにより、実行しているコードが含まれているモジュールのファイルの名前(保存されているファイルの名前)を取得することができます。

サンプルコード1

__filenameの使用例です。

__filename-a.js

var b = require('./__filename-b.js');

console.log(__filename);

b.printFilename();

__filename-b.js

exports.printFilename = function () {
    console.log(__filename);
}

実行結果

C:\work\node>node __filename-a.js
C:\work\node\__filename-a.js
C:\work\node\__filename-b.js

サンプルコード2

module.filenameの使用例です。

module-filename-a.js

var b = require('./module-filename-b.js');

console.log(module.filename);

b.printFilename();

module-filename-b.js

exports.printFilename = function () {
    console.log(module.filename);
}

実行結果

C:\work\node>node module-filename-a.js
C:\work\node\module-filename-a.js
C:\work\node\module-filename-b.js

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js