ファイルがbashから供給されているかどうかをどのように判断しますか?ファイルがbashから供給されていることを検出する方法
これはthis questionと非常によく似ていますが、提示されている解決策はありません。 /bin/bash -c ". ./setup.bash;"
あなたが印刷されたメッセージは、「このスクリプトを調達してください実行しないでください。」表示されます:あなたがこれを調達した場合
if [ "$_" == "$0" ]
then
echo "Please source this script. Do not execute."
exit 1
fi
:たとえば、ソースのファイルsetup.bash
を与えられました。
これはなぜですか?
私の最終目標は、私が最終的にやりたいという意味、このソースのファイルに依存しているbashスクリプトを実行することですので、私は、ファイルをこのように調達しています:
`/bin/bash -c ". ./setup.bash; some_command_that_relies_on_setup_dot_bash;"`
私が直接bashでこれらを実行する場合たとえば:
. ./setup.bash
some_command_that_relies_on_setup_dot_bash
ソースファイルにメッセージが表示されません。私は間違って何をしていますか?