在 Bash 中显示函数体

在 Bash 中显示函数体

.bashrc我在我的文件中设置了几个函数。我想只显示函数的实际代码而不执行它,以快速参考某些内容。

有什么办法可以让我们看到函数的定义吗?

答案1

内置选项declare-f作用是:

bash-4.2$ declare -f apropos1
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}

我就是type为了这个目的而使用的,打字比较短;)

bash-4.2$ type apropos1
apropos1 is a function
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}

答案2

您可以使用该type命令来执行此操作。

type yourfunc会将函数打印到 STDOUT。作为man type说,

类型实用程序应指示如果用作命令名称,每个参数将如何解释。

答案3

对于内置命令的信息使用:

help [-s|-d] COMMAND1 COMMAND2 ....

例如:

help help alias

有关所有这些类型的信息,例如:

help -s '' 

答案4

type如果您在 shell 中声明了函数,则可以工作;但which即使您从另一个文件获取该函数,也可以工作。

相关内容