LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1271|回复: 11

自定义了PS1后的奇怪现象

[复制链接]
发表于 2006-2-13 23:12:57 | 显示全部楼层 |阅读模式
自定义了PS1后,发现长命令行编辑时很奇怪的现象,删除一个字符它就往上跳一行,这到底是怎么回事?

[HTML][23:06:22 ~]$ (a=/usr/share/doc/bash/NEWS; expr $a : '.*/\(.*\)' \| $a)
[23:06:22 ~]$ (a=/usr/share/doc/bash-/NEWS; expr $a : '.*/\(.*\)' \| $a)
[23:06:22 ~]$ (a=/usr/share/doc/bash-3/NEWS; expr $a : '.*/\(.*\)' \| $a)
[23:06:22 ~]$ (a=/usr/share/doc/bash-3./NEWS; expr $a : '.*/\(.*\)' \| $a)
| $a)[/HTML]

[HTML]export PS1='[\e[32m\t\e[0m \W]\\$ '[/HTML]
发表于 2006-2-14 07:53:37 | 显示全部楼层
我觉得是颜色在捣鬼。我以前也有这个问题,取消也颜色提示后,问题就没有了,现在我也懒得要颜色了。。。。

(只有在命令行很长的时候才有这个问题,短的没问题)
回复 支持 反对

使用道具 举报

发表于 2006-2-14 11:38:22 | 显示全部楼层
应该是命令行太长又加了颜色,我的也是这样,不过我一直没管它呵呵
回复 支持 反对

使用道具 举报

发表于 2006-2-14 13:59:48 | 显示全部楼层
你的颜色是不是写错了?颜色都是类似 echo -e "\033[1;37mHello world"什么的,你颜色那里怎么指定文字还是背景的0、1都不见了光剩颜色??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-14 16:23:06 | 显示全部楼层
是颜色在捣鬼,取消颜色就没问题了。
\033和\e都是转义的意思,我只改文字颜色。

加一个换行就没问题了,很奇怪;但我又不想要这个换行
[HTML]export PS1='[\e[32m\t\e[0m \W]\\$ \n'[/HTML]
回复 支持 反对

使用道具 举报

发表于 2006-2-14 16:58:17 | 显示全部楼层
man bash 查看:PROMPTING关于\[和\]的说明,对于颜色等非打印字符需要用它们包含起来。
export PS1='[\[\e[32m\]\t\[\e[0m\] \W]$'
回复 支持 反对

使用道具 举报

发表于 2006-2-14 16:58:44 | 显示全部楼层
Post by linux_now
是颜色在捣鬼,取消颜色就没问题了。
\033和\e都是转义的意思,我只改文字颜色。

加一个换行就没问题了,很奇怪;但我又不想要这个换行
[HTML]export PS1='[\e[32m\t\e[0m \W]\\$ \n'[/HTML]

哦,原来不指定0或者1就默认用0的颜色。不过很奇怪啊,我用你这个不加换行符也完全正常。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-14 17:12:09 | 显示全部楼层
是不是跟终端有关?我在gnome 的 terminal 下有问题

“PROMPTING关于\[和\]的说明,对于颜色等非打印字符需要用它们包含起来。”
还是有问题,光标又跑到同一行前面了:
[HTML]export PS1='[\[\e[32m\]\t\[\e[0m\] \W]\\$ '[/HTML]
[HTML]ll7:29:59 ~]$ echo 'helllllllllllllllllllllllllllllllllllllllllllllllllllllllll[/HTML]
回复 支持 反对

使用道具 举报

发表于 2006-2-15 08:10:33 | 显示全部楼层
我的bash3.1,gnome-terminal没问题,rxvt不照
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-15 16:50:40 | 显示全部楼层
我的还是不行,不过发现有趣的现象

先运行一个命令head  -0后,就不会出现怪问题了,这也很怪,感觉是gnome终端的问题,在tty下没有问题的。GNOME 终端 2.13.3
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表