Linux学习笔记 - Shell 控制语句

时间:2022-09-08 16:25:24

if 语句

语法:

#!/bin/bash

a=10
b=20

if [ $a -eq $b ]
then
   echo "a 等于 b"
elif [ $a -gt $b ]
then
   echo "a 大于 b"
elif [ $a -lt $b ]
then
   echo "a 小于 b"
else
   echo "没有符合的条件"
fi


output: a 小于 b

举例:

if [condition]

then ...

else if [condition]
then...
else then...
fi

 

 

for 循环

语法:

for var in item1 item2 ... itemN
do
    command1
    command2
    ...
    commandN
done

举个例子,输出列表中的所有数字:

#!/bin/bash
for var in 1 2 3 4 5 
do
    echo "value is ${var}"
done

output:
value is 1
value is 2
value is 3
value is 4
value is 5

 

While 语句

while 也可以实现循环, 她的语法如下:

while condition
do
    command
done

此外,我们经常使用 while 语句来实现人机交互(用户输入), 举个例子:

#!/bin/bash
echo '按下 <CTRL-D> 退出' echo -n '输入你最喜欢的书名: ' while read book do echo "是的!$book 是一部好书" done output: 按下 <CTRL-D> 退出 输入你最喜欢的书名: linux is good 是的!linux is good 是一部好书

 

循环的其他关键字

下面的实例中,展示了一个无限循环,并使用case条件作出退出/终止一次循环操作。

#!/bin/bash

while : #开启无限循环
do
    echo -n "输入 1 到 5 之间的数字:"
    read aNum
    case $aNum in
        1|2|3|4|5) echo "你输入的数字为 $aNum!"
        ;;
        *) echo "你输入的数字不是 1 到 5 之间的! 游戏结束"
            break # break 表示退出循环; 如果使用continue关键字,则结束本次循环,继续执行循环后面的内容
        ;;
    esac
done