我使用的是不熟悉的Linux系統,它有一個命令use_python
。 type
報告說,它是一個功能:如何找到定義bash函數的位置?
$ type use_python
use_python is a function
[... snipped source]
如何找到這些文件函數中定義?可能嗎?我看過系統的默認bashrc,但它包含許多其他文件。
我使用的是不熟悉的Linux系統,它有一個命令use_python
。 type
報告說,它是一個功能:如何找到定義bash函數的位置?
$ type use_python
use_python is a function
[... snipped source]
如何找到這些文件函數中定義?可能嗎?我看過系統的默認bashrc,但它包含許多其他文件。
用bash -x
開始你的shell。在後面的所有+
前綴輸出中,您應該能夠挑出一條看起來像+ . some_file
(帶有一個或多個加號)最接近於use_python
定義的行,在這種情況下some_file
應該是您想要的文件。
如果use_python
僅在登錄shell中定義,則可能需要嘗試bash -lx
。
哈哈,聰明。儘管如此,仍然有點手動。 –
你沒有什麼可以做的。 'bash'根本無法追蹤哪裏來源。 – chepner
通常情況下,如果它們在「.bashrc」中與「是一個函數」一起設置,那麼您將獲得定義本身。但這不是在這裏發生的,所以我不知道。你有沒有在所有'〜/ .bash *'文件中嘗試grepping? – fedorqui
是的,使用'find'和'grep' ... – piokuc
@fedorqui我有定義,我想知道哪個文件包含該定義。我會嘗試grep(儘管我必須運行它/ etc) –