我有一个bash脚本,里面有:
exit 1
当我“源”这个脚本而不是运行它时,它会导致调用者退出。
您可以在脚本中使用此检查:
[[ $0 = $BASH_SOURCE ]] && echo "normal run" || echo "sourced run"
或使用 if/else/fi 不管你在哪里打电话 exit :
if/else/fi
exit
if [[ $0 = $BASH_SOURCE ]]; then exit 1 else # don't call exit echo "some error..." fi