shell script-条件语句、循环语句
条件语句
1 #!/bin/bash 2 3 read -p "input your name:" name 4 #第一种判断 5 if [ "$name" == "Mike" ]; then #注意这里用 [... ]比较两个字符串时,变量 $name 加引号,并且 "==" 两边有空格;"["后面有空格; "]"前面有空格 6 echo "eq" 7 else 8 echo "not eq" 9 fi 10 12 #第二种判断 13 if test $name= "Mike" ; then #注意这里用 test 比较两个字符串时,变量 $name 没有加引号,并且 "=" 两边有空格 14 echo "eq" 15 else 16 echo "not eq" 17 fi
第一种判断和第二种是等效的。
case 语句
1 #!/bin/bash 2 3 read -p "input your name: " name 4 5 case $name in 6 "Mike" ) 7 echo "you are Mike" 8 ;; 9 "Tom" ) 10 echo "you are Tom" 11 ;; 12 * ) #相当于通配符,0~无穷多个任意字符 13 echo "anything" 14 ;; 15 esac
循环
1 while [ condition ] #表示condition成立时,执行 2 do 3 #程序段落 4 done 5 6 7 until [ condition ] #表示condition不成立时,执行;若成立,则退出循环 8 do 9 #程序段落 10 done 11 12 13 for var in con1 con2 con3.... # 第一次循环,$var 内容为con1;第二次为con2.... 14 do 15 #程序段落 16 done 17 18 19 for (( i=1 ; i<100 ; i=i+1)) 20 do 21 s=$(($s+Si)) 22 done
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。