是否可以在Bash中将条件的结果保存在变量中?
类似:
IS_DEV=$[[ "$ENV" = "$DEV" ]]
使用ENV=$1
和DEV="development"
。
然后可以多次使用它:
if $IS_DEV; then
...
fi
谢谢。
答案 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 ...