NodeJS获取路径中的:__dirnameprocess.cwd()process.execPath有什么区别

__dirname

获取当前js文件所在路径

注意:是获取当前js文件所在路径,而部署获取当前js文件的文件路径

1
2
// G:\Desktop\AWStats\test.js
console.log(__dirname) // G:\Desktop\AWStats

process.cwd()

获取node命令启动路径

简而言之:命令行当前位置在哪,获取的就是哪的路径

1
2
3
4
5
6
7
8
9
// G:\Desktop\AWStats\test.js

// cd G:\Desktop\AWStats
// run: node test.js
console.log(process.cwd()) // G:\Desktop\AWStats

// cd G:\Desktop\AWStats\themes
// run: node ../test.js
console.log(process.cwd()) // G:\Desktop\AWStats\themes

process.execPath

执行此js脚本所用的nodejs程序文件路径

1
2
// G:\Desktop\AWStats\test.js
console.log(process.execPath) // D:\Program Files\nodejs\node.exe