logo
Published on

nodejs 絶対パスを相対パスに変換

Authors

Node.jsプログラミング言語において、ファイルやプログラムの絶対パスを相対パスへ変換する方法についてです。プログラミング、コーディングにおいて絶対パス←→相対パスの相互変換はそこそこ使う頻度の多い実装です。覚えておくと便利でしょう。

https://yuis.xsrv.jp/data/egYNr1idd47MWCMktxPj5CXRcTV52X17.png

nodejsでは基本的に絶対パス指定されたファイルの読み込みはできないらしい。Rubyとかもそうだけど、普段Bash使ってる身としてはわざわざ変換するのが面倒だなと思う。

javascript - Node require absolute path - Stack Overflow

カレントのスクリプトファイルから相対的なファイルの相対パスを取得するには以下。

var path = require('path');

path.relative( __dirname , "/mnt/c/path/to/file.js"

使用例

var noderc = require( path.relative( __dirname , process.env.NODE_RC_FILE ) );
Path | Node.js v12.6.0 Documentation