Я знаю, что вы можете установить переменные окружения для процесса следующим образом:
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
, но я хочу, чтобы эти переменные были доступны только процессу, который я собираюсь запустить в своем терминале.