函数

在脚本中,我们可以定义并调用函数。跟其它程序设计语言类似,函数是一个代码块,但有所不同。

bash中,函数是一个命令序列,这个命令序列组织在某个名字下面,即 函数名 。调用函数跟其它语言一样,写下函数名字,函数就会被 调用

我们可以这样声明函数:

  1. my_func () {
  2. # 语句
  3. }
  4. my_func # 调用 my_func

我们必须在调用前声明函数。

函数可以接收参数并返回结果 —— 返回值。参数,在函数内部,跟非交互式下的脚本参数处理方式相同 —— 使用位置参数。返回值可以使用return命令 返回

下面这个函数接收一个名字参数,返回0,表示成功执行。

  1. # 带参数的函数
  2. greeting () {
  3. if [[ -n $1 ]]; then
  4. echo "Hello, $1!"
  5. else
  6. echo "Hello, unknown!"
  7. fi
  8. return 0
  9. }
  10. greeting Denys # Hello, Denys!
  11. greeting # Hello, unknown!

我们之前已经介绍过返回值。不带任何参数的return会返回最后一个执行的命令的返回值。上面的例子,return 0会返回一个成功表示执行的值,0