我正在用node.js构建一个命令行,我需要知道命令调用的位置,但我无法弄明白吗?我试过__dirname
,但它无效,如何知道命令运行的文件夹。
答案 0 :(得分:1)
它将具有PWD
(当前工作目录)属性。
[09:08:51]::tmp$ pwd
/tmp
[09:08:53]::tmp$ node
> process.env.PWD
'/tmp'
differences between process.cwd()
vs process.env.PWD
实际上可能就是您要找的内容,但请考虑{{3}}以及您的用例。
答案 1 :(得分:1)
使用process.cwd()代替__dirname
,区别在于__dirname返回模块(您的代码)所在的文件夹,process.cwd()返回Node当前工作目录所在的目录。 js过程。这对命令行很有用。
答案 2 :(得分:0)
这将返回主文件的路径:
require('path').dirname(require.main.filename)
目前的工作目录是
process.cwd()
后一个是从中获取脚本的路径。