如何找到定义bash函数的位置?

时间:2014-03-28 15:27:00

标签: bash reflection

我使用的是一个不熟悉的Linux系统,它有一个命令use_pythontype报告它是一个功能:

$ type use_python
use_python is a function
[... snipped source]

如何找到定义了该功能的文件?可能吗?我查看了系统的默认bashrc,但它包含了许多其他文件。

1 个答案:

答案 0 :(得分:1)

使用bash -x启动您的shell。在随后的所有+ - 前缀输出中,您应该能够选择一条看起来像+ . some_file(带有一个或多个加号)的行,该行最接近{{1}的定义},在这种情况下use_python应该是您想要的文件。

如果some_file仅在登录shell中定义,则可能需要尝试bash -lx