Shell函数参数

Shell函数参数教程

Shell 中,我们定义 函数 时,不像 C 语言C++PythonJavaGolang 那样,需要传递参数,Shell 中的函数在定义时不能指明参数,但是在调用时却可以传递参数。

函数参数是 Shell 位置参数的一种,在函数内部可以使用 $n 来接收,例如,$1 表示第一个参数,$2 表示第二个参数,依次类推。除了 n,还有另外三个比较重要的变量,# 可以获取传递的参数的个数,$@ 或者 $* 可以一次性获取所有的参数。

案例

Shell函数参数

定义函数,并传递参数

#!/bin/bash function show(){ echo "Name is: $1" echo "Site is: $2" echo "Age is: $3" } show haicoder www.haicoder.net 109

程序运行后,控制台输出如下:

03_Shell函数参数.png

我们定义了一个函数 show,同时,在该函数里面,我们使用了 $1$2$3 分别获取了传递的第一个参数、第二个参数和第三个参数。

Shell函数参数

定义函数,并传递参数

#!/bin/bash function show(){ for str in $@ do echo $str done } show haicoder www.haicoder.net 109

程序运行后,控制台输出如下:

04_Shell函数参数.png

我们看到,我们在函数 show 里面,使用了 $@ 获取了函数传递的所有参数。

Shell函数参数总结

函数参数是 Shell 位置参数的一种,在函数内部可以使用 $n 来接收,例如,$1 表示第一个参数,$2 表示第二个参数,依次类推。除了 n,还有另外三个比较重要的变量,# 可以获取传递的参数的个数,$@ 或者 $* 可以一次性获取所有的参数。