bash中的特殊字符提示不起作用(彩色的用户名)

我在用:

red=$(tput setaf 1) green=$(tput setaf 2) blue=$(tput setaf 4) reset=$(tput sgr0) export PS1="\[$red\]\u\[$reset\]@\[$green\]\h\[$reset\]:\[$blue\]\w\[$reset\]\$ " export EDITOR=nano 

这是什么显示:[] \ u [] @ [] \ h []:[] \ w [] $

我怎样才能解决这个问题? 似乎bash不解释特殊字符。

解:

用户使用/ bin / sh not / bin / bash

改变这个解决了我所有的问题。

事实上,在你的例子输出中,shell提示符仍然有方括号,并且转义提示说你的引用在本地引起了一些棘手的问题,但是你在问题粘贴的内容对于我来说是简单的剪切 – 粘贴bash 4.1.5(1) – 释放。