条件保存在bash中的变量中

时间:2018-09-25 23:02:10

标签: bash shell

是否可以在Bash中将条件的结果保存在变量中?

类似:

IS_DEV=$[[ "$ENV" = "$DEV" ]]

使用ENV=$1DEV="development"

然后可以多次使用它:

if $IS_DEV; then
    ...
fi

谢谢。

1 个答案:

答案 0 :(得分:1)

代码应存储在函数中,而不是变量中; BashFAQ #50详细介绍了否则会带来的危险。

# aside: don't use upper-case names for your own variables. ENV, specifically, is reserved
# per http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html
is_dev() { [[ $ENV = "$DEV" ]]; }

if is_dev; then

通过对比,如果要存储结果:

if [[ $ENV = "$DEV" ]]; then is_dev=1; else is_dev=0; fi

if (( is_dev )); then ...