Где хранятся переменные среды Linux/Unix? Как я могу добавить свою собственную переменную среды и сделать ее постоянной, не только в текущем запущенном скрипте?Переменные среды Linux/Unix
ответ
вы можете добавить их в свой профиль, например ~/.bash_profile
. глобальный профиль обычно находится в/etc. например /etc/profile
. Посмотрите также в каталоге /etc/profile.d
, если он у вас есть.
Я не вижу/и т.д./профиль, но я вижу /etc/profile.d, который содержит файлы gvfs-bash-completion.sh и speechd-user-port.sh. Что я должен сделать, чтобы добавить переменные среды для всех пользователей? –
те, что находятся в '/ etc/profile.d', являются настраиваемыми профилями. Для всех пользователей, если у вас нет '/ etc/profile', создайте его. – ghostdog74
Для просмотра переменных env используйте команду printenv
.
Чтобы установить новую переменную можно использовать ~/.bash_rc
файл:
export new_variable=10
new_variable
будет доступен для всех оболочек.
Спасибо. Вы имеете в виду файл ~/.bashrc? Что касается настройки переменной среды для всех пользователей? –
Нет пробелов вокруг '='. 'export new_variable = 10' или он не будет работать. –
Вы ищете ключевое слово export
?
Дополнительная информация:
- Defining a variable with or without export
- http://www.ibm.com/developerworks/library/l-bash.html - раздел Переменные окружения.
Добавить export
заявления ~/.bash_login
Я не вижу файл ~/.bash_login. Могу ли я создать его? В чем разница между ~/.bash_login и ~/.bashrc? –
@alex Вы можете создать его. bash_login запускается для систем входа и bashrc для интерактивных оболочек. Подробности см. в man-странице. – Amarghosh
http://lowfatlinux.com/linux-environment-variables.html –