0

当我使用 in 中的命令typeset -fksh,标准输出中会显示一个函数列表及其定义。我试图搜索这些函数的定义位置,但我找不到任何关于它们的提示。谁能帮我找到它们?

编辑

我只是在学习 typeset 命令的使用,输入man typesetgame me nothing ( no manual entry for typeset)。为了定义将使用 显示typeset -f的函数,我们需要定义一个函数并使用 导出它typeset -xf

4

2 回答 2

1

函数可以在.profile, 或文件中声明,从 FPATH 变量引用的目录或文件中调用.profile或放入 FPATH 变量引用的目录中(可能还有其他地方)。仔细阅读您man ksh在启动时处理文件的顺序。搜索“调用”、“文件”和“函数”部分。

此外,还有一组 ksh 设置的默认函数。因此,请编辑您的问题以显示您关注的函数名称。

IHTH

于 2013-01-17T17:34:43.837 回答
0

Shell 不会记录函数(或别名,或变量等)的定义位置。从概念上讲,尽管有 shell 历史记录等交互式使用功能,但 shell 一次从输入中读取一个命令,执行它们,然后忘记它们。有时这些命令来自交互式输入,有时它们来自脚本。有时它们会产生副作用,例如在 shell 环境中定义函数,但 shell 在执行完命令后仍然不记得命令或其在 shell 输入流中的位置。

于 2013-01-17T16:24:20.577 回答