Linux
從 bash 獲取執行的原始碼
好的,這是最後一次嘗試,看看我是否可以挽救我不小心做的事情。
我不小心在我的電腦上做了“
command
> ~/.profile”而不是“command
>>~/.profile”。我沒有對其進行版本控制(再也不會發生),並且由於當時沒有在編輯器中打開 .profile,因此我在任何備份文件或 Vim 緩衝區中都沒有現有版本。
在這一點上我唯一能想到的就是我仍然有一個終端會話打開,執行在我上面的錯誤之前 ~/.profile 文件中的行。我的問題是:有什麼方法可以獲取目前執行的原始碼?
如果我執行,也許更明確和通用
source ~/.profile
除了查看源文件之外,還有什麼方法可以查看在該終端會話中執行了什麼?
不過,吸取的教訓,版本你所有的點文件。
提前致謝。
-哈桑
我不知道,但根據裡面的內容,您可以在仍然打開的終端中獲得很大一部分:
這將得到您的提示定義
$ echo $ PS1
這將為您提供所有的 shell 變數和定義的函式。它可能有很多東西,因為例如在 Ubuntu 中,還有各種其他宏用於完成和未定義的東西,但你可以提取你的東西。
$設置
這會給你你的別名
$別名
這些不會為您提供 .profile 中的任何邏輯來幫助決定如何或為什麼定義上述內容,但它們可能會為您提供所需的大部分內容。