Main Content

シェル コマンドの環境変数の変更

この例では、system コマンドを使用して関数を呼び出す際に MATLAB® により設定される環境変数の値を、ユーザー指定の値で置き換える方法を説明します。

system コマンドを使用して関数を呼び出すと、その関数は MATLAB 環境を継承します。環境変数を変更するには、シェル ラッパーを使用します。環境変数 MATLAB_SHELL を使用して、更新された変数を含むシェルを指定します。この例では、環境変数 LD_LIBRARY_PATH にカスタム値を使用します。

次の内容を使って、<PATH_TO_SHELL_SCRIPT> フォルダーにラッパー ファイル matlab_shell.sh を作成します。ここで、<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 を呼び出し、MATLAB_SHELL を次のように設定します。

<PATH_TO_SHELL_SCRIPT>/matlab_shell.sh

MATLAB コマンド プロンプトから LD_LIBRARY_PATH の値を表示します。

!echo $LD_LIBRARY_PATH

これで、system コマンドを使用して関数を呼び出すと、その関数では <MY_LIBRARY_PATH> の指定する LD_LIBRARY_PATH の値が使用されるようになります。

参考