相关疑难解决方法(0)

如何检测脚本是否来源

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

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

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

bash ksh

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

在Bash中使用变量作为案例模式

我正在尝试编写一个Bash脚本,该脚本在case语句中使用变量作为模式.但是我无法让它发挥作用.

案例陈述:

case "$1" in
    $test)
        echo "matched"
        ;;
    *)
        echo "didn't match"
        ;;
esac
Run Code Online (Sandbox Code Playgroud)

我已经试过分配此$testaaa|bbb|ccc,(aaa|bbb|ccc),[aaa,bbb,ccc]和其他几个组合.我也尝试了这些作为case语句的模式:@($test),@($(echo $test)),$($test).也没有成功.

编辑

为清楚起见,我希望变量代表多个这样的模式:

case "$1" in
    aaa|bbb|ccc)
        echo "matched"
        ;;
    *)
        echo "didn't match"
        ;;
esac
Run Code Online (Sandbox Code Playgroud)

bash pattern-matching switch-statement

21
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×2

ksh ×1

pattern-matching ×1

switch-statement ×1