Как установить глобальную персистентную переменную?

Я создаю bashscript для установки небольшого приложения, которое я пишу. Часть той установки требует установки переменной среды так, чтобы другие процессы могли сослаться на нее.

Мой простой тест сценария оболочки похож на это:

#!/bin/sh

export FOO=abc

Я понимаю почему FOO не будет видимо после того, как сценарий будет выполняться, если сделано как так:

$ sh script.sh

и почему это сделает это видимым:

$ source script.sh

таким образом, это - обходное решение, но я задаюсь вопросом, как общие сценарии установки делают это - например, я - вполне уверенные установщики как mysql, и т.д. устанавливают глобальные переменные среды.

Что правильный путь состоит в том, чтобы сделать это? Я предполагаю, что могу попросить, чтобы мои пользователи установили путем выполнения:

$ source script.sh

но не уверенный, если существует лучший путь.

Спасибо

2
задан 21 March 2018 в 20:30

1 ответ

Добавьте эти строки к своему сценарию. Ваш сценарий должен иметь root доступ.

echo 'export FOO=abc' > /etc/profile.d/foo.sh

Следующий перезапуск это будет доступно.

1
ответ дан 2 December 2019 в 04:45

Другие вопросы по тегам:

Похожие вопросы: