首页 > 代码库 > shell脚本如何自定义函数

shell脚本如何自定义函数

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

在Linux中,写shell脚本也一样,有时会用到自定义函数。

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


1、定义函数的格式:

[sql] view plain copy
  1. function-name ( ){  
  2.         command1  
  3.         ........  
  4. }  


[plain] view plain copy
  1. #函数名前面也可以加上function关键字  
  2. function  function-name( ) {    
  3.         command1  
  4.         ........  
  5. }  


2.函数调用

以下是一个函数的脚本实例:

[html] view plain copy
  1. #!/bin/bash  
  2. function hello(){          #声明函数  
  3.   echo "Hello!"            #函数的主体,输出"Hello!"  
  4. }                          #函数结束  
  5. hello                      #调用函数  


3.参数传递
 向函数传递参数就像在脚本是使用变量位置$1,$2,$3...$9
 以下是一个传递参数的实例:

 

[html] view plain copy
  1. #!/bin/bash  
  2. function hello(){  
  3.     echo "Hello! The first parameter is ‘$1‘."  
  4. }  
  5. hello good  

#该脚本执行的结果是: Hello! The first parameter is ‘good‘.


4.函数文件
  保存函数的文件,用以上的例子写成一个函数文件如下:

 

[html] view plain copy
  1. #!/bin/bash  
  2. function  hello ( ){  
  3.   echo "Hello!"  
  4.   return 1  
  5. }  

上面的hellofunction文件就是一个函数文件,可通过另一个脚本来调用

 

[html] view plain copy
  1. #!/bin/bash  
  2. . hellofunction      #调用函数文件,点和hellofunction之间有个空格  
  3. hello                #调用函数  


5.载入和删除
  用set查看已载入的函数
  用unset function-name 取消载入
  举例如下:

 

[html] view plain copy
    1. #!/bin/bash  
    2. #hellof  
    3. . hellofunction  
    4. unset hello  
    5. hello            #因为已经取消载入,所以会出错 

shell脚本如何自定义函数