Process.platform은 Windows의 경우 “win32″를 반환합니다. Windows에서 사용중인 Windows 버전에 따라 사용자의 홈 디렉토리는 C : \ Users [USERNAME] 또는 C : \ Documents and Settings [USERNAME] 일 수 있습니다. 유닉스에서는 이것이 문제가되지 않습니다.
답변
더 최근의 답변 에서 언급했듯이 선호하는 방법은 다음과 같습니다.
const homedir = require('os').homedir();
[원래 답변] : USERPROFILE
win32 에서 환경 변수를 사용하지 않는 이유는 무엇 입니까?
function getUserHome() {
return process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'];
}
답변
os.homedir()
이 PR 에 의해 추가 되었으며 nodejs의 공개 4.0.0 릴리스의 일부입니다.
사용법 예 :
const os = require('os');
console.log(os.homedir());
답변
변수 값이 아닌 기능에 의존하는 것이 더 정확합니다. 특히 Windows에는 2 가지 가능한 변수가 있습니다.
function getUserHome() {
return process.env.HOME || process.env.USERPROFILE;
}
편집 : 최신 답변에서 언급했듯이 https://stackoverflow.com/a/32556337/103396 이 올바른 방법입니다 ( require('os').homedir()
).
답변
답변
getUserRootFolder() {
return process.env.HOME || process.env.HOMEPATH || process.env.USERPROFILE;
}
답변
![](http://daplus.net/wp-content/uploads/2023/04/coupang_part-e1630022808943-2.png)