查找 shell 关键字、内置函数和用户定义函数的命令是什么?

查找 shell 关键字、内置函数和用户定义函数的命令是什么?

我正在与朋友讨论如何在 shell 中解析命令,他告诉我 bash 按以下顺序搜索命令

  1. 别名列表
  2. shell 关键字列表
  3. 用户定义函数列表
  4. shell 内置函数列表
  5. PATH 变量中指定的目录列表,从左到右。

我知道可以通过发出“alias”命令来找到别名。可以使用“echo $PATH”命令找到 PATH 变量内容。

你能告诉我需要使用哪些命令来

  1. 列出所有 shell 关键字
  2. 列出所有用户定义的函数
  3. 列出所有 shell 内置函数

谢谢。

答案1

列出所有 shell 关键字

请参阅 shell 手册。“关键字”有点含糊——对于 Bash,请参阅下面定义的内置命令,或者考虑查看shell 变量特殊参数或索引shell 保留字

列出所有用户定义的函数

在 Bash(以及 Zsh,可能还有其他)中,您可以使用typeset -f列出所有函数。

列出所有 shell 内置函数

Bash 参考手册提供了以下列表:

在 OS X 中,您还可以查看手册页,man builtin以比较不同 shell 中可用的内置命令。我不确定 GNU/Linux 中是否提供此功能。

相关内容