bash(4) 函数 function

来源:互联网 发布:移动身份证读卡器软件 编辑:程序博客网 时间:2024/06/14 12:11

函数Functions

  使用function有两个原因:一、function存放在系统的内存,所以调用的使用,效率更高;二、更好地组织长的bash,使之模块化。定义function,有两个方式:

function functname {    shell commands}functname ( ){    shell commands}

上面两种方式没有区别。我们可以通过unset –f functname 来删除函数的定义。 当我们定义一个function,将它的名字和定义存放在内存,我们可以象调用shell脚本的方式来调用它。我们通过declare -f 来查看当前已经定义的function情况,如果我们只查看function名字,使用declare -F 。

Function作为一个整体运行,不会分割为子进程,此外Function的优先级别高于脚本。如果有重名,优先级别依次如下:

Aliases关键字,例如function,if,forFunctionsBuilt-ins,例如cd,type在命令搜索路径PATH下的脚本和可执行文件