Как передать переменные среды процессу в сценарии? - PullRequest
0 голосов
/ 06 апреля 2020

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

PATH=/new/path ./binary

Я хочу создать скрипт с переменными окружения и передать скрипт так:

script ./binary

Мой вопрос: как это сделать и как это сделать, не устанавливая эти переменные окружения для терминала, в котором я запускаю процесс.

Разработка:

Внутри моего скрипта :

#!/bin/sh
LD_LIBRARY_PATH="$PWD/lib:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH

if [ -z "$APP_DIR" ]; then
    APP_DIR="$PWD/app_dir"
    export APP_DIR
fi
if [ -z "$APP_HOME" ]; then
    APP_HOME="$PWD/app_home"
    export APP_HOME
fi

Я могу получить сценарий для оболочки терминала с помощью: source script.sh, но я хочу, чтобы эти переменные были доступны только процессу, который я собираюсь запустить в своем терминале.

...