我们的ksh环境定义了几个函数。可以使用typeset -f
ksh命令(或functions
别名)列出这些函数的名称。是否有可能查看这些函数的定义(即源代码)?
这似乎是一个很明显的问题,但我已经尝试了各种参数来使用typeset -f
命令,但没有成功。
以Linux为例:
$ foo()
> {
> echo foo
> }
$ foo
foo
$ typeset -f foo
foo
$
对于环境中默认定义的某些(但不是所有)其他函数,typeset -f
确实显示源代码。
更新1:这发生在Linux内核2.4.21-32上。
更新2:Ctrl-V显示“Version M 1993-12-28 n+”,看起来这是一个相当旧的版本,可能没有Gilles在下面提到的修复。
谢谢, 史蒂夫