Анонимный пользователь
Дополнительно
Как установить переменную окружения пользователя? (постоянно, не в сеансе)
Это меня раздражает. Я видел несколько предложений (все с использованием разных файлов и синтаксиса), и ни одно из них не сработало.
Как установить переменную окружения для определенного пользователя? Я на debian squeeze. Какой точный синтаксис я должен указать в файле, чтобы ABC = "123"?
145
6
Вы должны поместить объявление в файлы инициализации вашей оболочки:
Если вы используете bash, ash, ksh или другую оболочку в стиле Bourne, вы можете добавить
в ваш файл
.profile' (
${HOME}/.profile'). Это ситуация по умолчанию в большинстве Unix установок, и в частности в Debian.Если ваша оболочка входа - bash, вы можете использовать
.bash_profile
(${HOME}/.bash_profile
) или.bash_login
вместо этого.Примечание: Если один из этих файлов существует и ваша оболочка входа - bash,
.profile
не будет прочитан при входе по ssh или на текстовой консоли, но он может быть прочитан вместо.bash_profile
при входе из графического интерфейса. Также, если нет.bash_profile
, то используйте.bashrc
.Если вы установили zsh в качестве оболочки для входа, используйте
~/.zprofile
вместо~/.profile
.Если вы используете tcsh, добавьте
в файле
.login
(${HOME}/.login
)Файл использовать файл/etc/среды для настройки переменных среды. Затем добавьте следующую строку в файл/etc/окружающей среды`.
Теперь Азбука перемеююый будет доступна от всех пользовательских сессий. Чтобы проверить выходной переменной сначала обновить переменную окружения с помощью команды
и запустить
Эхо $букварь
.Это общая процедура, которую можно использовать практически для любой оболочки. В любом случае, вы должны знать, с какой оболочкой пользователь обычно входит в систему:
Затем нужно выяснить, какие dot-файлы эта оболочка обычно читает:
Короткий путь, который может сработать, это перечислить те dot-файлы, которые содержат имя оболочки:
Если вы хотите проверить, действительно ли один из файлов читается при входе в систему, вы можете просто вывести имя файла в каждом из них, например:
Тогда при входе в систему вы увидите, какие файлы считываются, и сможете решить, какой из них следует изменить. Помните, что не следует пытаться использовать
echo "$0"
или подобное, потому что значение$0
зависит от того, как shell обрабатывает dot-файлы, и может ввести в заблуждение.Когда речь идет об объявлении переменной "постоянно", обратите внимание, что это распространяется только на сессию. Нет способа получить доступ к значению переменной без сеанса, поэтому она не имеет никакого значения вне сеанса. Если вы имеете в виду "только для чтения", то это зависит от оболочки, и в Bash вы можете использовать:
если оно уже имеет значение, или
чтобы присвоить его одновременно. Не все оболочки имеют эту возможность.
Чтобы объявить переменную в большинстве оболочек, вы должны использовать имя переменной (
[A-Za-z_][A-Za-z0-9_]*
), за которым следует знак равенства (и без пробелов вокруг знака равенства), затем значение (желательно заключенное в кавычки, если только значение не является простым[A-Za-z0-9_]+
). Например:Используйте экспорт.
Чтобы проверить, установлен ли он, используйте
и/или
Чтобы добавить его на постоянной основе, добавьте это в файл
~/.bashrc
.Точные команды:
Лучший способ, который работал для меня изменения .файл bashrc в оболочке bash.
используйте этот например:
экспорт <переменная> = " в<любой путь/значение>"и
например :
вывоз дома = на " ьquot пользователей/дома//&;
Не забывайте использовать в
""
в качестве использовать' '
не будет работать и ваш файл bashrc будет сообщать об ошибке при поиске.Я также попытался изменить файл /etc/окружающей среды, но это не'т позвольте мне создать новую переменную окружения и когда я нашел его, ему подсказали об ошибке, что определена переменная не найдена.