Я не впевнений, чому це не стає більш зрозумілим, але /etc/environment
його не аналізує жоден окремий біт коду чи якийсь конкретний оболонки (або обов'язково будь-яка оболонка взагалі) (спробуйте, grep -r "/etc/environment" /etc
і ви побачите, що я маю на увазі). pam
зокрема аналізує його безпосередньо, не проносячи його через оболонку.
Під умовою, і я маю на увазі умовність , це чисті пари ключ-значення, при цьому значення необов'язково цитуються. Ви не можете помістити туди, що намагається зробити, наприклад, змінне розширення або виконання команд, і очікуйте, що це спрацює.
Я буду здивований, якщо ви зможете знайти будь-яке суворе, формальне визначення граматики де завгодно.
Напевно, найближча до авторитетної відповіді, до якої можна дійти, - це pam_env
документи: http://www.linux-pam.org/Linux-PAM-html/sag-pam_env.html