我想重置shell,當我註銷/登錄,重新加載別名,函數,從頭開始。重置/重新加載bash,完全(別名和函數)
但是不要談論source ~/.bashrc
也不. ~/.bashrc
!
爲什麼?由於source
或.
只是使用新函數,別名等豐富當前shell。
僅供參考,你可以把這個功能在你的.bashrc:
function foo {
echo "foo";
}
然後做source ~/.bashrc
或. ~/.bashrc
。是的,foo正在工作。那麼現在,edityour .bashrc
,並通過酒吧更換富,有:
function bar {
echo "bar";
}
您現在可以Foo類型,只見該函數foo仍在工作,儘管它不存在於.bashrc
文件中。這就是我想表達的觀點。
我tryed exec bash;
,但它doesn'nt加載.bashrc
文件。而exec bash;source ~/.bashrc;
顯然不起作用,因爲exec
殺死當前進程(source
永遠不會被調用)。
你有沒有試過bash --login? – BigMike 2013-03-05 11:14:20
+1 @BigMike這會創建一個bash的新實例,就像您剛剛登錄一樣。是您想要的嗎? – 2013-03-05 13:14:14
該死的,你很好。請在@BigMike的甜蜜回答中寫下'bash --login',我可以選擇你! – 2013-03-05 13:48:22