shell脚本中简单的函数示例

    这个脚本 程序my_name演示了函数的参数是如何传递的,以及函数如何返回一个true或false值。使用一个参数来调用该脚本程序,该参数是想要在问题中使用的名字。

shell脚本代码

#!/bin/sh

yes_or_no() {
  echo "Is your name $* ?"
  while true
  do
    echo -n "Enter yes or no: "
    read x
    case "$x" in
      y | yes ) return 0;;
      n | no  ) return 1;;
      *  )      echo "Answer yes or no"
      esac
   done
}

echo "Original parameters are $*"

if yes_or_no "$1"
then
  echo "Hi $1,nice name"
else
  echo "Never mind"
fi
exit 0  


测试结果



    该脚本程序开始时,函数yes_or_no被定义,但先不会被执行。在if语句中,脚本程序执行到函数 yes_or_no 时,先把$1替换为程序的第一个参数zhang,再把它作为参数传递给这个函数。函数将使用这些参数(他们现在被保存在$1、$2等位置参数中)并向调用者返回一个值。if 结构再根据这个返回值去执行响应的语句。

  shell 中的 if 语句, 如果 yes_or_no 返回 0 ,则走 then 分支,如果返回 1 ,则走 else 分支。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。