Eug*_*ash 4 bash prompt
我想使用 ANSI 转义码自定义我的 bash 提示,并注意到在某些 howtos 中,代码被包含在内\[,\]而在其他人中则没有。
\[
\]
例如,这些对我来说同样有效:
PS1='\e[0;32m foo ' PS1='\[\e[0;32m\] foo '
我想知道它有什么区别?
Ign*_*ams 8
不同之处在于,在没有\[and的情况下\],bash 将无法跟踪提示的实际长度,并且随着时间的推移,各种视觉故障会显现出来。
Eug*_*ash 6
这个页面上有很好的解释:
这些序列将告诉 bash 包含的字符不占用行上的任何空格,这将允许自动换行继续正常工作。如果没有它们,您最终会得到一个漂亮的提示,如果您碰巧输入接近终端最右侧的命令,该提示会弄乱屏幕。
归档时间:
15 年,6 月 前
查看次数:
572 次
最近记录:
13 年,9 月 前