这是$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转义序列,用于设置图标名称和窗口标题。大多数图形终端仿真器(以及某些非图形终端仿真器)也支持它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句