Shell函数
1.定义语法
标准写法:
funciton funName () {
order.......
return n
}
简化写法1:
funciton funName {
order.......
return n
}
简化写法2:
funName () {
order.......
return n
}
注意:
1)不加rueturn的情况下,函数返回码是函数中最后一条命令返回的退出状态码。
2)退出状态码必须是0~255
2.函数执行
1)不带参数函数:直接函数名 funName
2)带参数函数: funName arg1 arg2(必须放在同一行)
3)函数命令行上任何参数都可以通过 $1 $2......取得
#!/bin/bash
test () {
echo $[ $ * $ ]
}
test $ $ #函数参数位置变量,使用脚本参数位置变量
3.注意事项:
1)可以使用 "."或者"source"来加载定义在独立文件中的函数,以供调用
2) 使用local定义局部变量
3) 可使用位置变量作为函数的参数使用,此时父亲脚本中的位置参数被临时覆盖,函数执行完毕后恢复
4)函数的输出 result=$(fun)
5)获取命令行最后一个参数${!#},不是${$#}因为不能再花括号内使用美元符。