私はrun.sh
次のように1つのbashソースを持っています、
#!/bin/bash
if [ $# -ne 1 ]; then
exit
fi
...
2つの方法で実行すると、動作が異なります。最初の方法は、
source run.sh
実行後にターミナルを閉じます。第二の方法は、
./run.sh
これは単にスクリプトの実行を終了し、ターミナルにとどまります。source run.sh
と./run.sh
実行の両方でbashスクリプトを終了するコマンドがあるかどうかを尋ねています。私も試してみましたreturn
が、./run.sh
実行してもうまくいきません。
より一般的には、私はこれがなぜ起こっているのか、そして「ソース」と「。」を使用することの違いに興味があります。スクリプトを実行するには?
$- = *i*
ますか?