Mat*_*hew 186 filesystems platform-agnostic platform-independent node.js home-directory
Process.platform为Windows返回"win32".在Windows上,用户的主目录可能是C:\ Users [USERNAME]或C:\ Documents and Settings [USERNAME],具体取决于所使用的Windows版本.在Unix上,这不是问题.
mae*_*ics 294
正如最近的回答中所提到的,现在首选的方法是:
const homedir = require('os').homedir();
Run Code Online (Sandbox Code Playgroud)
[原创答案]:为什么不在USERPROFILE
win32上使用环境变量?
function getUserHome() {
return process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'];
}
Run Code Online (Sandbox Code Playgroud)
Cod*_*lor 219
os.homedir()
由此PR添加,是nodejs的公共4.0.0版本的一部分.
用法示例:
const os = require('os');
console.log(os.homedir());
Run Code Online (Sandbox Code Playgroud)
Onc*_*Tom 79
那么,依靠特征而不是变量值会更准确.特别是因为Windows有两个可能的变量.
function getUserHome() {
return process.env.HOME || process.env.USERPROFILE;
}
Run Code Online (Sandbox Code Playgroud)
编辑:正如最近的回答中所提到的,/sf/answers/2278943621/是正确的方法(require('os').homedir()
).
And*_*ade 15
使用osenv.home()
.它由isaacs维护,我相信是由npm本身使用的.
https://github.com/isaacs/osenv
归档时间: |
|
查看次数: |
90418 次 |
最近记录: |