
我使用 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\] "