我尝试了许多不同的组合,包括brakets,引号,Animated.Value
,||
,但是脚本在没有无限循环的情况下工作的唯一方法是没有OR in while循环比较,如下所示:{{ 1}}这是我想要运行的脚本示例:
-o
答案 0 :(得分:3)
在while语句的条件下,您应该使用&&
而不是||
。
您正在尝试从标准输入读取名称,如果该名称是" Jorge"或者" Eduardo",你已经完成了。当它处于while状态时,你想继续在循环中的名字,如果不是" Jorge" 和这个名字不是" Eduardo"。
你当前的状况是如果名字不是" Jorge"那么继续循环。 或这个名字不是" Eduardo"。并且名称不能同时出现。
答案 1 :(得分:2)
使用正则表达式:
while [[ ! "$name" =~ ^(Jorge|Eduardo)$ ]]; do
或Bash extented globbing:
shopt -s extglob
while [[ "$name" != @(Jorge|Eduardo) ]]; do