Где я могу найти документацию по формату файла / etc / environment?

14

Из общесистемных переменных среды :

  • / etc / environment - Этот файл специально предназначен для общесистемных настроек переменных среды. Это не файл сценария, а скорее состоит из выражений присваивания, по одному на строку. В частности, этот файл хранит общесистемные настройки языка и пути.

Я ищу ABNF и / или более подробное описание поведения, или что-то, что на самом деле не является слухом на форуме.

Если это на Google, это ускользает от меня.

Макдауэлл
источник

Ответы:

13

Я не уверен, почему это не проясняется, но /etc/environmentне анализируется ни одним битом кода или какой-либо конкретной оболочкой (или обязательно какой-либо оболочкой вообще) (попробуйте, grep -r "/etc/environment" /etcи вы поймете, что я имею в виду). pamв частности разбирает его напрямую, не пропуская через оболочку.

По соглашению, и я имею в виду соглашение , это чистые пары ключ-значение, значения которых могут быть заключены в кавычки. Вы не можете поместить туда что-либо, что пытается сделать, например, расширение переменной или выполнение команды, и ожидать, что это сработает.

Я был бы удивлен, если бы вы могли найти строгое формальное определение грамматики в любом месте.

Вероятно, наиболее близким к авторитетному ответу, который вы можете получить, являются pam_envдокументы: http://www.linux-pam.org/Linux-PAM-html/sag-pam_env.html.

Николас Найт
источник
Вот что должно означать «это не файл сценария». Но я думаю, что многие люди не понимают.
OrangeDog
3

Вы можете найти полезную информацию в окружать человека странице. Это доступно из терминала, набрав man 7 environего.

По соглашению строки в среде имеют форму «имя = значение».

Вы также можете прочитать его в своем браузере: http://manpages.ubuntu.com/manpages/lucid/en/man7/environ.7.html#toptoc2

И это дает вам несколько примеров использования и более подробную информацию.

Weboide
источник
2
Обратите внимание, что справочная страница environment (7) документирует формат среды процесса в C API. Файл /etc/environmentиспользуется для заполнения среды процесса, но имеет свои собственные синтаксические правила, как объяснил Николас.
Жиль "ТАК - перестань быть злым"