在shell中调用函数时,可以向其传递有关参数。传递的参数在函数中,通过$n来调用,即第1个参数为$1,第2个为$2,依此类推。函数的声明和不带参数的函数定义相同。如:
func() { echo ${1} echo ${2} ... }
注意,最好使用标准的变量表示法,否则$10不能获取第10个参数,需要用${10}。
在前面特殊变量中,我们提到过有关函数的一些特殊变量表示,如$#,$@,$*,$?。看一个例子:
#!/bin/bash fun() { echo "There are $# parameter(s)" echo "The parameters are $@" echo "The first parameter is ${1}" echo "The second parameter is ${2}" } fun aaa bbb
运行结果:
There are 2 parameter(s) The parameters are aaa bbb The first parameter is aaa The second parameter is bbb