过程式编程语言代码执行顺序

顺序执行 逐条逐条执行

选择执行 代码有一个分支,条件满足是才会执行;两个或以上的分支只会执行其中一个分支

循环执行 代码片段(循环体)执行0,1多个来回



选择执行是指代码有一个分支,条件满足时才会执行

选择执行:

  1.if语句

  

  单分支if语句

if 测试条件;then

代码分支

fi

[root@localhost testdir]# vim if1.sh#!/bin/bash#snowbamboo#2016.08.19#单分支if语句脚本if [ -e $1 ]; then        echo "The file $1 exists"fi#$1 为位置变量,表示为第几个参数 (有关变量请参考 8/1837434) [root@localhost testdir]# bash if1.sh qThe file q exists

  双分支语句

if 测试条件;then

条件为真时执行代码分支

else 

条件为假时执行的代码分支

fi

[root@localhost testdir]# vim if2.sh#!/bin/bash#snowbamboo#2016.08.19#双分支if语句脚本if [ -e $1 ]; then        echo "The file $1 exists"else echo "then file $1 does not exist"fi#$1 为位置变量,表示为第几个参数 [root@localhost testdir]# bash if2.sh qThe file q exists[root@localhost testdir]# bash if2.sh qqthen file qq does not exist

   多分支语句

if 测试条件;then

条件为真时执行代码分支

elif 测试条件;then

条件为真时执行代码分支

elif 测试条件;then

else 

以上条件都不为真执行

fi

逐条进行判断,分支只会执行其中一个,只要第一个条件满足就执行,并退出。

[root@localhost bin]# bash test.sh file11 Input is not a file[root@localhost bin]# bash test.sh testtest is file good![root@localhost bin]# bash test.sh test1/test1/ is directory,please input a file

2.选择执行case语句

case 变量名 in

值1)

执行语句1

;;

值2)

执行语句2

;;

值3)

执行语句3

;;

esac

结构更加明晰,当第一次满足值的条件后退出。

#!/bin/bash#read -p "please input (yes |no) :" Acase $A in[yY]|[yY][eE][Ss])        echo "The user input a $A"          ;;[nN]|[[nN][oO])        echo  "The user input  a  $A"  ;;*)        echo "The user input other message" ;;esac#用户输入yes或no,判断用户输入的是yes还是no