首页 > 其他 > 详细

case ...esac判断 function方法 循环loop,while do done,until do done

时间:2019-07-29 16:17:51      阅读:100      评论:0      收藏:0      [点我收藏+]

就类似于其他语言中的case语句

 

用法

技术分享图片

要点

第一 开始结束  case  esac 正好相反   

第二  每段程序段需要用  两个;号结束。

例:

  1 case ${1} in
  2         "hello")
  3                 echo "Hello, how are you ?"
  4                 ;;
  5         "")
  6                 echo "You must input parameters,ex>{${0} som word}"
  7                 ;;
  8         *)
  9                 echo "Usage ${0} {hello}"
 10                 ;;
 11 esac
~                            

 

function方法

跟其他语言的方法相似

传参数的时候用的是默认参数$1 $2 $3 等等

function print ()
{
   echo $1      
}

print 1

他会自动将1带入到print这个函数中

while do done   当XXXXX的时候,执行程序

用法

技术分享图片

例:

  1 while [ "${yn}" != "yes" -a "${yn}" != "YES" ]
  2 do
  3         read -p "please input yes/YES to stop this program:" yn
  4 done
  5 echo "OK YOU INPUT THE CORRECT ANSWER."

判断式的符号必须左右都有空格,再次强调再次强调

until do done  先执行程序,直到XXX的时候停止

用法

技术分享图片

  1 #while [ "${yn}" != "yes" -a "${yn}" != "YES" ]
  2 until [ "${yn}" == "yes" -o "${yn}" == "YES" ]
  3 do
  4         read -p "please input yes/YES to stop this program:" yn
  5 done
  6 echo "OK YOU INPUT THE CORRECT ANSWER."
~                                                     

 

1-100累加

书中用的是while循环,我用的是until do done来写的测试例

  1 #!/bin/bash
  2 total=0
  3 input=1
  4 until [ "${input}" -gt "100" ] 
  5 do
  6 
  7         total=$((${total}+${input}))
  8         input=$((${input}+1))
  9 done
 10 echo "${total}"

 

case ...esac判断 function方法 循环loop,while do done,until do done

原文:https://www.cnblogs.com/Lonelychampion/p/11264422.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!