Node.js - как получить папку пользовательских данных платформы ОС
Я полный новичок в Node.js
Я ищу способ получить папку userdata с помощью Node.js, который будет работать как в окнах, так и в macOS
экземпляр Node.js будет запущен на пользовательской машине
это вернет следующее:
C:\Documents and Settings\JohnD\Application Data - Windows XP
C:\Users\JohnD\AppData\Roaming - Windows Vista and Up
/Users/JohnD/Library/Preferences - MacOS
Это возможно?
Спасибо
Ответы
Ответ 1
Вы можете проверить пользовательскую среду, которая хранится в process.env
Кроме того, посмотрите process.platform
Конкретно:
% node
> console.log(process.env.HOME)
/Users/miktam
> console.log(process.platform)
darwin
Имея эту информацию, вы сможете достичь того, что вам нужно.
Ответ 2
Попробуйте следующее:
process.env.APPDATA || (process.platform == 'darwin' ? process.env.HOME + 'Library/Preferences' : process.env.HOME + "/.local/share")
Ожидаемый результат:
OS X - "/Пользователи/Пользователь/Library/Настройки"
Windows 8 - "C:\Users\user\AppData\Roaming"
Windows XP - "C:\Documents and Settings\пользователь\Данные приложения"
Linux - '/home/user/.local/share'