Изменение переменной окружения для Shell команда

Этот пример показывает, как заменить пользовательским заданным значением набор значений переменной окружения MATLAB®, когда вы вызываете функцию с помощью команды system.

Когда вы используете команду system, чтобы вызвать функцию, функция наследовала среду MATLAB. Чтобы изменить значения переменной окружения, используйте обертку интерпретатора. Используйте переменную окружения MATLAB_SHELL, чтобы задать интерпретатор, содержащий вашу обновленную переменную. Этот пример использует пользовательское значение для переменной окружения LD_LIBRARY_PATH.

Создайте файл обертки matlab_shell.sh в папке <PATH_TO_SHELL_SCRIPT> со следующим содержимым, где <MY_LIBRARY_PATH> является вашим пользовательским значением.

#!/bin/sh

LD_LIBRARY_PATH=<MY_LIBRARY_PATH>
export LD_LIBRARY_PATH

exec ${SHELL:-/bin/sh}  $*

Если у вас есть пользовательское значение для SHELL, выражение, ${SHELL:-/bin/sh} использует ваше значение SHELL. В противном случае MATLAB использует Оболочку Bourne.

От подсказки операционной системы вызовите установку MATLAB_SHELL MATLAB к:

<PATH_TO_SHELL_SCRIPT>/matlab_shell.sh

Отобразите свое значение LD_LIBRARY_PATH от подсказки команды MATLAB.

!echo $LD_LIBRARY_PATH

Теперь, когда вы вызываете функцию с помощью команды system, функция использует значение LD_LIBRARY_PATH, заданное <MY_LIBRARY_PATH>.

Смотрите также