本文概述
- 如果在一行中没有其他语句, 请立即执行Bash
- bash if-else嵌套
- 结论
Bash if-else语句用于在语句的顺序执行流程中执行条件任务。有时,如果条件为真,我们想处理一组特定的语句,如果条件为假,则要处理另一组语句。为了执行此类操作,我们可以应用if-else机制。我们可以通过“ if语句”应用条件。
if-else语法
Bash Shell脚本中if-else语句的语法可以定义如下:
if [ condition ];
then
<
if block commands>
else
<
else block commands>
fi
要记住的要点
- 我们可以使用一组使用条件运算符连接的一个或多个条件。
- 其他块命令包括一组在条件为假时执行的动作。
- 条件表达式后的分号(; )是必须的。
例子1
下面的示例包含两个不同的场景,其中在第一个if-else语句中条件为true,在第二个if-else语句中条件为false。
#!/bin/bash#when the condition is true
if [ 10 -gt 3 ];
then
echo "10 is greater than 3."
else
echo "10 is not greater than 3."
fi#when the condition is false
if [ 3 -gt 10 ];
then
echo "3 is greater than 10."
else
echo "3 is not greater than 10."
fi
输出量
文章图片
在第一个if-else表达式中,条件(10 -gt 3)为true,因此执行if块中的语句。而在另一个if-else表达式中,条件(3 -gt 10)为false,因此执行else块中的语句。
例子2
在此示例中,我们说明了如何在Bash中的if-else语句中使用多个条件。我们使用bash逻辑运算符来加入多个条件。
#!/bin/bash# When condition is true
# TRUE &
&
FALSE || FALSE || TRUE
if [[ 10 -gt 9 &
&
10 == 9 || 2 -lt 1 || 25 -gt 20 ]];
then
echo "Given condition is true."
else
echo "Given condition is false."
fi# When condition is false
#TRUE &
&
FALSE || FALSE || TRUE
if [[ 10 -gt 9 &
&
10 == 8 || 3 -gt 4 || 8 -gt 8 ]];
then
echo "Given condition is true."
else
echo "Given condition is not true."
fi
输出量
文章图片
如果在一行中没有其他语句,请立即执行Bash我们可以在一行中编写完整的“ if-else语句”以及命令。你需要遵循给定的规则,才能在一行中使用if-else语句:
- 在if和else块的语句末尾使用分号(; )。
- 使用空格作为分隔符来附加所有语句。
例
#!/bin/bashread -p "Enter a value:" value
if [ $value -gt 9 ];
then echo "The value you typed is greater than 9.";
else echo "The value you typed is not greater than 9.";
fi
输出量
当我们输入值25时,输出将如下所示:
文章图片
bash if-else嵌套就像嵌套的if语句一样,if-else语句也可以在另一个if-else语句中使用。在Bash脚本中将其称为嵌套if-else。
以下是一个示例,解释了如何在Bash中使用嵌套的if-else语句:
例
#!/bin/bashread -p "Enter a value:" value
if [ $value -gt 9 ];
then
if [ $value -lt 11 ];
then
echo "$value>9, $value<
11"
else
echo "The value you typed is greater than 9."
fi
else echo "The value you typed is not greater than 9."
fi
输出量
如果我们输入10作为值,那么输出将如下所示:
文章图片
结论【bash if else语句】在本主题中,我们通过示例了解了Bash if-else语句的语法和用法。