スーパーユーザーでのこの回答に続いて、私はその関数をbashで記述しました。
_add_env()
{
export $1
if [[ ":\$$1:" != *":$2:"* ]]; then
eval $1="\$$1:$2";
fi
};
私はそれをそのように呼んでいます:_merge_env PATH "/ home / subway / land"
PATHに指定されたパスが含まれていても、条件は真のようです。
関連するbash-xの出力は次のとおりです。
- 579:[[:$ PATH:!= :/ \ h \ o \ m \ e / \ s \ u \ b \ w \ a \ y / \ l \ a \ n \ d: ]]
- 580:eval'PATH = $ PATH:/ home / subway / land'
私は何が間違っているのですか?