函数定义
function test(){}
test(){}
- 函数默认最后一条语句作为返回值。
- 可以直接指定return语句,但是return只能返回0-255的整数值,使用echo返回任意字符串或列表值
- 通过$1, 2... 获 得 传 参 , 2...获得传参, 2...获得传参,@或$*获得参数数组。
- 不做任何声明shell中变量都是全局变量,通过local定义本地变量,尽量避免函数中使用全局变量。
- 函数内部变量覆盖外部变量
- 通过$(function p1 p1 p3) 或
function p1 p1 p3
获得返回值。 - “. ./test.sh” 或者"source ./test.sh" 引入其他脚本的函数。
- export -f function 导出函数可以在子shell环境中使用。
- chmod +x ./test.sh 需要给被调用脚本加执行权限,否则无法执行
- declare -f funciton, set 查看函数内容。
- 通过 ( f u n c i t o n p 1 p 2 ) , ‘ (funciton p1 p2),` (funcitonp1p2),‘(funciton p1 p2)`获得引用函数返回值,也可以通过$?获得刚刚执行函数的返回值。
function test {
echo "first"
printf "second"
echo "third"
}
test //输出third
echo $(test) 输出 first second third