Shell脚本中的自定义函数


在写程序时,经常会用到函数,一般开发工具拥有丰富的函数库。但有时还需要根据自己的需要自定义函数满足我们的需求。在linux中,写shell脚本也一样,有时会用到自定义函数。

函数,最简单的定义为:将一组命令集或语句形成一个可用块,这些块称为函数。

1、定义函数的格式:
function-name ( ){
        command1
        ........
    }
 
或 function  function-name( ) {  #函数名前面多了个function关键字
        command1
        ........
    }

2.函数调用
    以下是一个函数的脚本实例:
    #!/bin/bash
    function hello(){          #声明函数
      echo "Hello!"            #函数的主体,输出"Hello!"
    }                                  #函数结束
    hello                            #调用函数


3.参数传递
  向函数传递参数就像在脚本是使用变量位置$1,$2,$3...$9
  以下是一个传递参数的实例:
  #!/bin/bash
  function hello(){
      echo "Hello! The first parameter is '$1'."
  }
  hello good
  #该脚本执行的结果是: Hello! The first parameter is 'good'.

4.函数文件
  保存函数的文件,用以上的例子写成一个函数文件如下:
  #!/bin/bash
  function  hello ( ){
    echo "Hello!"
    return 1
  }

上面的hellofunction文件就是一个函数文件,可通过另一个脚本来调用
  #!/bin/bash
  . hellofunction  #调用函数文件,点和hellofunction之间有个空格
  hello                #调用函数

5.载入和删除
  用set查看已载入的函数
  用unset function-name 取消载入
  举例如下:
#!/bin/bash
  #hellof
  . hellofunction
  unset hello
  hello            #因为已经取消载入,所以会出错

相关内容