bash-4.3 如何将 bash 中的字符串表达式解释为布尔值
bash-4.3 How to interpret a string expression in bash as boolean
我有一个这样的数组
T[1]="x>1";
T[2]="y<2";
.
.
还有一些类似的作业
x=2;
y=10;
.
.
最后,我需要一个基于以下术语的逻辑
logic_value1=${T[1]} # but this is just a string and not Boolean
logic_value2=${T[2]} # ....." " "....
.
.
有人可以帮忙吗? (我写在一个过程中,所以eval不能用,查询是这样的:
select *
from table1
where condition1 AND logic_value1
)
但对于 logic_value1 的整数值,此条件和查询无效
在这种特定情况下,使用算术展开就足够了。
T[1]="x>1";
T[2]="y<2";
x=2;
y=10;
logic_value[1]=$((${T[1]}))
logic_value[2]=$((${T[2]}))
declare -p logic_value
# outputs: declare -a logic_value=([1]="1" [2]="0")
我有一个这样的数组
T[1]="x>1";
T[2]="y<2";
.
.
还有一些类似的作业
x=2;
y=10;
.
.
最后,我需要一个基于以下术语的逻辑
logic_value1=${T[1]} # but this is just a string and not Boolean
logic_value2=${T[2]} # ....." " "....
.
.
有人可以帮忙吗? (我写在一个过程中,所以eval不能用,查询是这样的:
select *
from table1
where condition1 AND logic_value1
)
但对于 logic_value1 的整数值,此条件和查询无效
在这种特定情况下,使用算术展开就足够了。
T[1]="x>1";
T[2]="y<2";
x=2;
y=10;
logic_value[1]=$((${T[1]}))
logic_value[2]=$((${T[2]}))
declare -p logic_value
# outputs: declare -a logic_value=([1]="1" [2]="0")