Linux 需要用一个变量比较两个字符串
我有两个变量,分别是Linux 需要用一个变量比较两个字符串,linux,shell,if-statement,ksh,Linux,Shell,If Statement,Ksh,我有两个变量,分别是model\u name和status。需要检查model\u name是否在model1或model2中,并且状态处于失败状态,然后必须使用格式1向用户发送邮件,否则邮件应作为默认格式发送 我试过了 If [[ $model_name = "model1" ]] -o [[ $model_name = "model2"]] -a [[$status = "Failed" ]] then format1 else Default format fi 但是这不起作用,默认格
model\u name
和status
。需要检查model\u name
是否在model1或model2中,并且状态
处于失败状态,然后必须使用格式1向用户发送邮件,否则邮件应作为默认格式发送
我试过了
If [[ $model_name = "model1" ]] -o [[ $model_name = "model2"]] -a [[$status = "Failed" ]] then format1
else Default format
fi
但是这不起作用,默认格式的邮件只接收send
-o
和-a
不是或和操作的操作员。只需分别使用|
和&
另外,您可能忘记了$status
之前的空格,并且if
命令中没有大写字母
您的最终测试线应如下所示:
如果[[$model_name=“model1”].[$model_name=“model2”]]和&[$status=“Failed”]
-o
和-a
不是或和和操作的运算符。只需分别使用|
和&
另外,您可能忘记了$status
之前的空格,并且if
命令中没有大写字母
您的最终测试线应如下所示:
如果[[$model\u name=“model1”].[$model\u name=“model2”]&&[$status=“Failed”]]
谢谢。。。我也试过,但没用。如果[$model_name=“model1”]&&&[$status=“Failed”]单个模型名称comaprison工作正常,但在执行或不执行其条件时working@user8592197即使是对$model\u name
比较的偏执?像([$model_name=“model1”].[$model_name=“model2”]])&&[$status=“Failed”]
?因为这是谢谢Drosvar…现在开始工作了…再次感谢Hanks。。。我也试过,但没用。如果[$model_name=“model1”]&&&[$status=“Failed”]单个模型名称comaprison工作正常,但在执行或不执行其条件时working@user8592197即使是对$model\u name
比较的偏执?像([$model_name=“model1”].[$model_name=“model2”]])&&[$status=“Failed”]
?因为这是谢谢Drosvar…现在开始工作了…再次谢谢