2016-10-13 37 views
1

這裏是我的PS1:擊:重新評估PS1沒有回車

export PS1='\[email protected]\h:\w\$ ' 

,看起來像這樣:

[email protected]:~/ $ 

我已綁定Alt + {左,右}箭頭以命令改變當前工作目錄:

bind -x '"\e[1;3D":pushd . > /dev/null && cd ..' 
bind -x '"\e[1;3C":popd > /dev/null' 

這可以工作,但PS1中的當前工作目錄不會被評估,因爲沒有回車符輸入n。有沒有辦法強制bash重新評估PS1?

+1

你想讓它重新顯示提示,即使你沒有執行一個命令? – Barmar

+0

我已經通過綁定執行了一個命令。 –

+0

如果在綁定的末尾添加'&echo -n「」'會怎麼樣? – xxfelixxx

回答

0

in-bash-how-do-i-bind-function-key-to-a-command接受的答案一起之後,它看起來像去除-x,並在結尾處增加一個\n應該這樣做:

bind '"\e[1;3D":"pushd . >/dev/null && cd .. && echo\n"' 
bind '"\e[1;3C":"popd > /dev/null && echo -n\n"' 
+0

它並沒有真正做我想做的事情,因爲它會顯示命令,然後添加回車符。但我想這樣做,而不顯示該命令並添加回車。出於美學原因,我想進行更改。 –

+0

謝謝,修復。我找不到任何其他方式強制bash重新發布$ PS1提示。 – xxfelixxx

+0

我都沒有,這就是爲什麼我問;) –