Linux: где хранятся переменные среды?
Если я ввожу в терминал
export DISPLAY=:0.0
... где оболочка хранит эту переменную среды?
Я использую Ubuntu 8.10. Я посмотрел в файлах ~/.профиль и/etc / профиль и не может найти никаких следов отображения.
5 ответов:
переменные среды процесса существуют во время выполнения и не хранятся в каком-либо файле или около того. Они хранятся в собственной памяти процесса (вот где они находятся, чтобы передать детям). Но есть виртуальный файл в
/proc/pid/environэтот файл показывает все переменные среды, которые были переданы при вызове процесса (если процесс не перезаписал эту часть своей памяти - большинство программ этого не делают). Ядро делает их видимыми через этот виртуальный файл. Можно перечислить их. Например, чтобы просмотреть переменные процесса 3940, можно сделать
cat /proc/3940/environ | tr '' '\n'
каждая переменная отделяется двоичным нулем от следующей. tr заменяет ноль на новую строку.
типа "set" и вы получите список всех текущих переменных. Если вы хотите, чтобы что-то сохранялось, поместите его в ~/.bashrc или ~/.файл (если вы используете bash)
Если вы хотите использовать среду для общесистемного использования, вы можете сделать это с помощью .