相关疑难解决方法(0)

如何检测脚本是否来源

我有一个脚本,exit如果它被采购我不希望它调用.

我想过检查是否$0 == bash但如果脚本来自另一个脚本,或者如果用户从不同的shell中获取它,则会出现问题ksh.

是否有可靠的方法来检测脚本是否来源?

bash ksh

188
推荐指数
9
解决办法
5万
查看次数

bash:退出source-d脚本

我的bash脚本使用了很多检查,例如:

if [ something bad ] ; then
    echo "error message"
    exit 1
fi
Run Code Online (Sandbox Code Playgroud)

我发现,如果用户通过执行它source my-script.sh,而不是./my-script.sh,这exit 1 将关闭用户的shell! 并且用户看不到任何错误消息!

我如何知道脚本是source-d,如何退出(使用非零状态代码)source-d脚本?一般来说,我该怎么办呢?

bash

5
推荐指数
2
解决办法
577
查看次数

标签 统计

bash ×2

ksh ×1