Bash
命令行中的 Ctrl-P 無法按預期工作
當我在命令行上使用 Ctrl+p 鍵綁定(我使用預設的 emacs 鍵綁定)時,它有時會按預期工作,顯示我執行的上一個命令。我在 Ubuntu 18.04 上使用 bash shell。
但是,有時它會出現故障:它會在命令行中保留上一行的一部分。這不會影響我執行的下一個命令,但它仍然困擾著我。我怎樣才能解決這個問題?
(我知道這種解釋沒有多大意義,所以這是一個螢幕截圖。我不能再在最後一個命令上退格(由於
touch file
某種原因,該行。)當我說“這不會影響我執行的下一個命令“,這就是我的意思:編輯:我的 PS1 上寫著:
\e[1;32mKR$ \e[m
解決方案是更改命令提示符的值,方法
$PS1
是包含以\e
in\[
和開頭的內容\]
。這是來自另一個答案。我從
$PS1
被設置為開始\e[1;32mKR$ \e[m
。我嘗試的第一個解決方案是用這些序列包圍整個表達式,
\[\e[1;32mKR$ \e[m\]
但這不起作用,所以我不得不將它分成兩個不同的部分,一個用於每個不可列印的塊。因此,我留下了\[\e[1;32m\]
並且\[\e[m\]
一旦我添加了這些序列。最終的解決方案是
\[\e[1;32m\]KR$ \[\e[m\]
。