Linux Shell流程控制 if else

在Linux Shell脚本中,if else语句是一种常见的流程控制结构,它用于根据条件决定程序执行的路径。if else语句基本格式如下:

if [ condition ]
then
    commands
else
    commands
fi

其中,condition是一个条件表达式,可以使用比较运算符、布尔运算符和其他Shell内置的测试运算符。commands是需要执行的命令或命令块,可以包含任意数量的Shell命令,以及其他控制结构。

以下是一个简单的if else示例,它根据当前时间的小时数,输出不同的问候语:

hour=$(date +%H)

if [ $hour -lt 12 ]
then
    echo "Good morning!"
else
    echo "Good afternoon!"
fi

在这个示例中,date +%H命令用于获取当前时间的小时数,并将结果存储在hour变量中。然后,if else语句根据hour的值,选择相应的问候语输出。

除了基本的if else语句,还可以使用其他流程控制结构,如elif、case和for循环等,来实现更复杂的逻辑。