14.2.1 if判断结构

if是最简单的判断语句,可以针对测试结果做相应处理:如果测试为真则运行相关代码,其语法结构如下:


  1. if expression; then

  2.    command

  3. fi


如果expression测试返回真,则执行command。如果要执行的不止一条命令,则不同命令间用换行符隔开,如下所示:


  1. if expression; then

  2. command1

  3. command2

  4. ...

  5. fi


下面演示一个程序,该程序会根据输入的学生成绩打印对应的等级:大于等于80分的为A;大于等于60分、小于80分的为B、小于60分的为C。


  1. [root@localhost ~]# cat score01.sh

  2. #!/bin/bash

  3. echo -n "Please input a score:"

  4. read SCORE

  5. if [ "$SCORE" -lt 60 ]; then

  6. echo "C"

  7. fi

  8. if [ "$SCORE" -lt 80 -a "$SCORE" -ge 60 ]; then

  9. echo "B"

  10. fi

  11. if [ "$SCORE" -ge 80 ]; then

  12. echo "A"

  13. fi

  14. #

  15. 脚本运行结果,依次输入95

  16. 75

  17. 45

  18. 时,脚本分别打印了正确的成绩等级

  19. [root@localhost ~]# bash score01.sh

  20. Please input a score:95

  21. A

  22. [root@localhost ~]# bash score01.sh

  23. Please input a score:75

  24. B

  25. [root@localhost ~]# bash score01.sh

  26. Please input a score:45

  27. C