購入した商用アプリケーションと対話するには、特別なシェル環境を設定する必要があります。アプリケーションは「即時」環境を照会できます。
そのため、コマンドが渡されたスクリプトを使用してシェルを起動しようとしました。
/bin/bash -c '/opt/xyq/commercialApp/bin/tool getEnv > ~/setAppEnv; . ~/setAppEnv; . ~/setMyEnv;'
これはうまくいきます...特別な環境を取得し、取得し、独自の環境を取得します...しかし、シェルは終了します。
終了するまで2番目のbashシェルにそのまま残すにはどうすればよいですか?
ベストアンサー1
これを使用して、起動時に代替を--rcfile
指定できます。.bashrc
これは設定で利用できます。
/opt/xyq/commercialApp/bin/tool/getEnv > ~/setAppEnv
cat ~/setMyEnv >> ~/setAppEnv
bash --rcfile ~/setAppEnv
これをロードするには、.bashrc
コマンドの後に追加するだけですcat
。その後、関数に置き換えることができます。
runApp()
{
/opt/xyq/commercialApp/bin/tool/getEnv > ~/setAppEnv
cat ~/setMyEnv >> ~/setAppEnv
echo '[[ -e ~/.bashrc ]] && . ~/.bashrc' >> ~/setAppEnv
bash --rcfile ~/setAppEnv
}