1

次のスクリプト行は何をしますか。./pull.env および mailstatusFile=./.mailstatus

助けてください

4

1 に答える 1

1

ドットは「ソース」と同義で、現在のセッションでスクリプト ファイルをロードします。たとえば、次の内容の foo という名前のスクリプトがあるとします。

 PS1="XXX"

これを bash のコマンド ラインで実行すると、次のように表示されます。

 $
 $ PS1="XXX"
 XXX

XXXあなたのプロンプトになります。

そのスクリプトを実行可能にして実行すると、次のように表示されます。

 $ chmod a+x foo
 $ ./foo
 $

シェルスクリプトを実行すると、シェルが新しいプロセスを作成するためです。その新しいプロセスではプロンプトが変更されますが、現在のプロセスでは変更されません。

スクリプトを実行sourceすると、現在のシェルで入力した場合と同じ効果が得られます

 $
 $ source ./foo
 XXX

...そして、私が言ったように、「.」の同義語ですsource

 $
 $ . ./foo
 XXX
于 2012-05-23T16:38:28.767 に答える