Bash 顏色提示和長命令

Bash 顏色提示和長命令

我使用 ANSI 轉義序列對 bash 提示符號的部分內容進行著色。這非常有效,直到我目前輸入的命令足夠長以至於必須換行為止。命令的其餘部分不會顯示在下一行,而是迴繞到目前行的第 1 列,覆蓋提示符的開頭。

我透過以下提示得到了這種行為:

export PS1="[\u][\033[0;32;40mdemo \033[0;33;40m1.5.40.b\033[0;37;40m] \w> \033[0m"

但它可以在相同的提示下正常工作,ANSI序列刪除:

export PS1="[\u][demo 1.5.40.b] \w> "

我使用目前版本的 Putty 和預設的 Putty 設定進行連接。作業系統是Ubuntu 8.10。

答案1

裡面一定有東西,因為以下字串來自bash 文件不表現出相同的行為:

PS1="\[\033[1;34m\][\$(date +%H%M)][\u@\h:\w]$\[\033[0m\] "

還沒弄清楚它是什麼,但他們的作品和你的作品並沒有...

編輯:嘗試:

PS1="[\u][\[\033[1;32m\]\[\033[1;40m\]demo \[\033[1;33m\]\[\033[1;40m\]1.5.40.b\[\033[0;37m\]] \w> \[\033[0m\] "

相關內容