shell 脚本中的 shell 函数

函数不仅在 shell 脚本中有用,而且还用于别名不可用的命令行情况。
为了演示,shell 函数在命令行上运行以说明函数的执行方式。

下面的示例创建一个名为 list 的函数,该函数显示当前目录中的子目录和文件总数。
list 函数调用 ls 命令,其输出定向到 wc 命令:

$ function list { ls -al | wc -l; }
$ list
34

Shell 函数与 Shell 别名

Shell 函数和别名在两个方面有所不同。

别名不像函数那样接受参数。

如果命令名称定义为函数和别名,则别名优先。

on it road .com

定义函数

使用以下通用格式定义函数:

# function [function name] { command; . . . command; }

注意:在左大括号之后和右大括号之前必须有一个空格。

以下示例定义了一个名为 num 的函数,该函数显示当前登录到系统的用户总数。
num 函数运行 who 命令,其输出进一步定向到 wc 命令。

$ function num { who | wc -l; }
如何在 Linux 中使用命令行 shell 函数

函数是 shell 编程的一个强大功能,是一组按通用功能组织的命令。
这些易于管理的单元在调用时返回单个值,并且不输出任何内容。
使用函数包括两个步骤:

  1. 定义函数
  2. 调用函数

调用函数

我们只需在命令行或者 shell 脚本中输入函数名称即可调用函数。

$ [function name]

例如,要在命令行上调用函数 num,请使用以下命令。

$ num

显示shell函数

要显示函数定义,请使用以下命令:

# typeset -f
list () 
{ 
    ls --color=auto -al | wc -l
}
num () 
{ 
    who | wc -l
}
日期:2020-09-17 00:13:57 来源:oir作者:oir