函数的目的就是代码重用,实现结构化编程的思想

在shell脚本中,定义函数的两种方式:

   function FUNCTIONNAME {

               函数体

                  }//使用function关键字定义

   FUNCTIONNAME() {

            函数体  

             }//直接使用函数名加一个小括号(中间不能有空格)

函数体就是封装在函数之中的代码

函数同系统上的库文件类似,都可以理解为实现特定功能,没有执行入口,可以被其他程序调用执行的共性

所以,在shell脚本编程中,函数必须被调用才能执行,调用的方式就是在需要函数执行的地方使用函数名调用


函数相关问题:

   1.自定义函数状态返回值

在shell中,实现自定义shell脚本执行状态返回值使用的是exit

在函数中,使用的是return,同exit一样,可以自定义返回值,同时退出函数,exit是退出脚本

   2.引用函数的执行结果

   VARIABLE=`函数名`

也是使用反引号的方式引用函数的执行结果,如上,将函数的执行结果赋值给某变量

   3.函数的参数

同shell脚本类似,函数也可以使用参数,$1,$2..分别表示第一个,第二个参数..

  例如:

      hello() {

          Name=$1

         echo "hello,$Name"

            }

那么在调用函数的使用就可以传递给函数一个参数

        hello jerry


脚本中信号的捕捉

    在shell脚本中也可以实现信号捕捉,除9和15号信号之后

信号捕捉:就是发给某进程的信号可以被改进程捕捉到,进而可以做出与原本信号代表的操作不同的动作

   在shell脚本中捕捉信号使用bash的内置命令:trap

      trap 'COMMAND' signal list

将信号列表中的信号捕捉到之后执行指定的命令