shell – 使用多个if语句和if语句之间是否有区别?

前端之家收集整理的这篇文章主要介绍了shell – 使用多个if语句和if语句之间是否有区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这个问题与shell脚本有关,但可以关于任何编程语言。

在shell脚本中使用多个if语句和使用elif语句有什么区别吗?而且,在我的情况下,一个案例声明将不会奏效。

是的,潜在的。考虑一下(C#,Java,无论如何):
int x = GetValueFromSomewhere();

if (x == 0)
{
    // Something
    x = 1;
}
else if (x == 1)
{
    // Something else...
}

vs这个:

int x = GetValueFromSomewhere();

if (x == 0)
{
    // Something
    x = 1;
}
if (x == 1)
{
    // Something else...
}

在第一种情况下,只会出现“Something”或“Something else …”之一。在第二种情况下,第一块的副作用使得第二块中的条件为真。

那么另一个例子,条件可能不是相互排斥的,首先是:

int x = ...;

if (x < 10)
{
    ...
} 
else if (x < 100)
{
    ...
}
else if (x < 1000)
{
    ...
}

如果你摆脱这里的“其他”,那么一旦一个条件匹配,其余的也是。

猜你在找的Bash相关文章