Bash
我的終端中以非零程式碼退出的任何命令都會關閉我的終端視窗
起初這有點好笑,就像玩“Bash Roulette”……但現在它變老了,哈哈
我的終端中以非零程式碼退出的任何命令都會關閉我的終端視窗
有人告訴我,也許我
set -e
在終端來源的某個地方設置了一些 bash 腳本。我已經檢查過
.bash_profile
//.bashrc
,.profile
它看起來不像set -e
在裡面。還有其他明顯的罪魁禍首嗎?
好吧,確實是一個任性
set -e
給我惹了麻煩。我發現的方式
set -e
是使用bash -lx
最好的辦法是使用:
bash -lx > lx.log 2>&1
然後打開該日誌文件並蒐索
set
…一旦你發現那個任性,
set -e
你可以刪除那條線,你的問題應該消失了!(機器重啟可能是個好主意)。就我而言,它
set -e
位於 .bash_profile 來源的文件中,但該行不在 .bash_profile 本身中。
如果您只是想解決問題,
set +e
請在結尾.bashrc
處包含- 。你可以去探勘——可能還有很多其他的地方
set -e
——但這會解決很多問題。但是,如果它
set -e
是您的一部分,$PROMPT_COMMAND
則上述內容將不起作用。試著printf '%s\n' "$PROMPT_COMMAND"
看看裡面有什麼。