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")