Determine command line working directory when running node bin script

  • process.cwd() returns directory where command has been executed (not directory of the node package) if it’s has not been changed by ‘process.chdir’ inside of application.
  • __filename returns absolute path to file where it is placed.
  • __dirname returns absolute path to directory of __filename.

If you need to load files from your module directory you need to use relative paths.

require('../lib/test');

instead of

var lib  = path.join(path.dirname(fs.realpathSync(__filename)), '../lib');

require(lib + '/test');

It’s always relative to file where it called from and don’t depend on current work dir.

Leave a Comment