if condition
then
statement(s)
fi
condition
是判断条件,如果 condition 成立(返回“真”),那么 then 后边的语句将会被执行;如果 condition 不成立(返回“假”),那么不会执行任何语句。
注意,最后必须以fi
来闭合,fi 就是 if 倒过来拼写。也正是有了 fi 来结尾,所以即使有多条语句也不需要用{ }
包围起来。
if condition; then
statement(s)
fi
;
,当 if 和 then 位于同一行的时候,这个分号是必须的,否则会有语法错误。
#!/bin/bash read a read b if (( $a == $b )) then echo "a和b相等" fi运行结果:
(())
是一种数学计算命令,它除了可以进行最基本的加减乘除运算,还可以进行大于、小于、等于等关系运算,以及与、或、非逻辑运算。当 a 和 b 相等时,(( $a == $b ))
判断条件成立,进入 if,执行 then 后边的 echo 语句。#!/bin/bash read age read iq if (( $age > 18 && $iq < 60 )) then echo "你都成年了,智商怎么还不及格!" echo "来C语言中文网(http://task.lmcjl.com/)学习编程吧,能迅速提高你的智商。" fi运行结果:
&&
就是逻辑“与”运算符,只有当&&
两侧的判断条件都为“真”时,整个判断条件才为“真”。{ }
包围起来,因为有 fi 收尾呢。
if condition
then
statement1
else
statement2
fi
#!/bin/bash read a read b if (( $a == $b )) then echo "a和b相等" else echo "a和b不相等,输入错误" fi运行结果:
if condition1
then
statement1
elif condition2
then
statement2
elif condition3
then
statement3
……
else
statementn
fi
#!/bin/bash read age if (( $age <= 2 )); then echo "婴儿" elif (( $age >= 3 && $age <= 8 )); then echo "幼儿" elif (( $age >= 9 && $age <= 17 )); then echo "少年" elif (( $age >= 18 && $age <=25 )); then echo "成年" elif (( $age >= 26 && $age <= 40 )); then echo "青年" elif (( $age >= 41 && $age <= 60 )); then echo "中年" else echo "老年" fi运行结果1:
#!/bin/bash printf "Input integer number: " read num if ((num==1)); then echo "Monday" elif ((num==2)); then echo "Tuesday" elif ((num==3)); then echo "Wednesday" elif ((num==4)); then echo "Thursday" elif ((num==5)); then echo "Friday" elif ((num==6)); then echo "Saturday" elif ((num==7)); then echo "Sunday" else echo "error" fi运行结果1:
本文链接:http://task.lmcjl.com/news/7046.html