bash脚本能否区分作为脚本调用和作为";资料来源;?
我有一个bash脚本,其中包含:bash脚本能否区分作为脚本调用和作为";资料来源;?,bash,Bash,我有一个bash脚本,其中包含: exit 1 当我“源”这个脚本而不是运行它时,它会导致调用者退出 有没有一种方法可以让脚本确定它是以“源”运行的,而不是作为脚本运行的?您可以在脚本中使用此检查: [[ $0 = $BASH_SOURCE ]] && echo "normal run" || echo "sourced run" 或者使用if/else/fi无论您在哪里呼叫exit: if [[ $0 = $BASH_SOURCE ]]; then exit 1 el
exit 1
当我“源”这个脚本而不是运行它时,它会导致调用者退出
有没有一种方法可以让脚本确定它是以“源”运行的,而不是作为脚本运行的?您可以在脚本中使用此检查:
[[ $0 = $BASH_SOURCE ]] && echo "normal run" || echo "sourced run"
或者使用if/else/fi
无论您在哪里呼叫exit
:
if [[ $0 = $BASH_SOURCE ]]; then
exit 1
else
# don't call exit
echo "some error..."
fi
看见