在Bash中显示功能主体


14

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

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

Answers:


15

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.*) '
}

6

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

type yourfunc将功能打印到STDOUT。至于man type说,

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

2
man type?Shell内置程序通常在我的系统上没有手册页。
manatwork

我已经通过链接更新了答案。我使用的系统是Arch Linux。
jasonwryan 2012年

1
谢谢。手册页包似乎包含有关Arch的更多内容。
manatwork

没问题:因为它是POSIX手册页之一,所以我认为它会被广泛分发...
jasonwryan 2012年

4
help type显示特定于Bash的信息。
l0b0 2012年

0

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

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

例如:

help help alias

有关所有信息的信息,例如:

help -s '' 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.