函数的两种表达方式
#第一种形式
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
}