2014-03-28 35 views
3

我使用的是不熟悉的Linux系統,它有一個命令use_pythontype報告說,它是一個功能:如何找到定義bash函數的位置?

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

如何找到這些文件函數中定義?可能嗎?我看過系統的默認bashrc,但它包含許多其他文件。

+0

通常情況下,如果它們在「.bashrc」中與「是一個函數」一起設置,那麼您將獲得定義本身。但這不是在這裏發生的,所以我不知道。你有沒有在所有'〜/ .bash *'文件中嘗試grepping? – fedorqui

+0

是的,使用'find'和'grep' ... – piokuc

+0

@fedorqui我有定義,我想知道哪個文件包含該定義。我會嘗試grep(儘管我必須運行它/ etc) –

回答

1

bash -x開始你的shell。在後面的所有+前綴輸出中,您應該能夠挑出一條看起來像+ . some_file(帶有一個或多個加號)最接近於use_python定義的行,在這種情況下some_file應該是您想要的文件。

如果use_python僅在登錄shell中定義,則可能需要嘗試bash -lx

+0

哈哈,聰明。儘管如此,仍然有點手動。 –

+1

你沒有什麼可以做的。 'bash'根本無法追蹤哪裏來源。 – chepner

相關問題