Rubyスクリプトの外で「ソースBash_Profile」コマンドをどのように維持しますか?

StackOverflow https://stackoverflow.com/questions/19850945

質問

私たちがやろうとしているのは、電話することです source bash_profile bash_profileファイルをリロードします。スクリプトは、人のbash_profileをつかみ、それを人のコンピューターにロードします。問題は、 source bash_profile Rubyスクリプトの外側に持続しません。スクリプトが終了した後、端末は以前と同じように見えます。どうすればそれを作ることができますか source bash_profile Rubyスクリプトの外には持続しますか?

正しい解決策はありません

他のヒント

bash_profile 通常、バッシュ環境(機能、エイリアス、変数、読み取りバインディングなどのインストール)を変更し、親バッシュプロセスの環境を変更する方法は実際にはありません。

だからあなたができる最善のことは、ルビースクリプトを終了することです exec新しいバッシュを指定します -l (また --login)それを作るオプション ログインシェル ソーシングから始まるように bash_profile. 。 (引数の最初のキャラクターを作成することでこれを行うこともできます -, 、通常はそれを設定します -bash.)

Rubyスクリプトの開始方法を制御できれば、それを引き起こすことができるかもしれません execエド、親バッシュプロセスを置き換えるために。それはよりクリーンなプロセスツリーになります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top