函数的两种表达方式

#第一种形式
function name {
    commands
    #return的作用是从函数中返回
    return
}

#第二种形式
name () {
    commands
    return
}

#其中,return是从函数体进行返回,本身程序并不返回,exit是从程序进行返回
exit 0:正常运行程序并退出程序
exit 1:非正常运行导致退出程序
return:返回函数,若在主函数中,则会退出函数并返回一值
return 0: 正常退出
return 1: 非正常退出,return value中的value值会返回给调用函数,并且赋值给$?

脚本中 shell 函数定义必须出现在函数调用之前

#!/bin/bash
report_uptime () { return}
cat << _EOF_
  $(report_uptime)
_EOF_

#函数返回示例
report_uptime () {
  echo "Function report_uptime executed."
  return
}
report_uptime #"Function report_uptime executed."

局部变量,只在函数的局部范围内有效

#所有的变量(包括常量)都是全局变量。全局变量在整个程序中保持存
#局部变量,只在函数的局部范围内有效
funct_1 () { 
  #必须使用如下的local格式声明局部变量
  local foo
  #局部变量赋值
  foo=1 
}

results matching ""

    No results matching ""