環境マネージャをインストールするbashスクリプトを作成しています。これは、複数のディレクトリに何かをインストールする必要があることを意味します。私の他のものを見て質問詳細については。しかし、それは私のアプローチを再び考えさせました。
私はこれを3つの別々のbashスクリプトにすることを検討しています。すると、ある人が他の人に電話をかけます。問題は次のとおりです。source .bash_profile
親シェルで作業を実行する必要があります。問題は、bashスクリプト内で呼び出されたbashスクリプトが新しいシェルまたは親シェルで実行されるのか、親シェル内のホストbashスクリプトシェル内の新しいシェルで実行されるのかです。
「シェル - セプション」それが私の脳を調理していることを知っています。私はこのプロセスを自動化したいのですが、これが私が直面している壁です。
ベストアンサー1
シェルでコマンドを実行すると、そのコマンドは常にそのシェルの子プロセスとして実行されます。
- 組み込みシェルです(例
cd
:) - ソースは(
. /path/to/file
、、source /path/to/file
) - それによって実行されます
exec
簡単チェックをご利用くださいps -e -o pid,ppid,user,args
。
source .bash_profile
変数がエクスポート用にマークされている場合にのみサブシェルに影響します(参照declare -x
)。