Bash
Ubuntu 中 Bash 預設 PS1 的前導部分是什麼意思?
這是
$PS1
我在新安裝的 Ubuntu 18.04 上的 Bash shell:\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \$
我可以很好地理解提示的所有其他部分:
${debian_chroot:+($debian_chroot)}
:如果已設置,則顯示它,但在其周圍添加括號;如果未設置,則不顯示\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \$``user@host:cwd $
:使用 CSI 轉義序列啟用顏色的標準提示我對第一部分感到困惑:
\[\e]0;\u@\h: \w\a\]
AFAIK,
\[
並\]
擴展到\001
並\002
告訴 GNU readline,它們之間的字元不應計入“提示長度”。這個問題可以歸結為這個意思:\e]0;\u@\h: \w\a
是
<ESC>]0;user@host: cwd<ALARM>
。那有什麼作用?(注:CSI<ESC>[
不是<ESC>]
,否則我會理解的)
這是一個XTerm 轉義序列,它設置圖示名稱和視窗標題。大多數圖形終端仿真器(以及一些非圖形終端仿真器)都支持它。