设置我的提示,有颜色的工作。相反,超过一行的命令将开始出现在当前行的左侧,覆盖当前字符。新线不再终端与自定义提示
回答
提示中的非打印字符需要包含在\[...\]
中,这样bash
才能准确计算提示的可见长度。
PS1='\[\e[3;32m\][\[email protected]\h:\W]$ \[\e[m\]'
^^ ^^ ^^ ^^
bash
本身不知道这些字节将不被终端显示;它是你的终端,而不是显示7字节的序列\e[3;32m
,只是改变用于显示以下字符的颜色。另一方面,\u
由用户名bash
自己替换,因此您不必做任何特殊的事情即可告知bash
如何正确处理它。
真棒工作! –
对于下一个人:即使使用'$(tput setaf 1)'设置颜色,您也必须这样做。我不认为你必须但我错了。它最终会看起来像'“\ [$(tput setaf 1)\]”'。 –
使用函数来创建提示的PS1必须以不同的方式处理它,请参阅:http://superuser.com/questions/301353/escape-non-printing-characters-in-a-function-for-a-bash -提示 – retracile
- 1. 自定义串行终端
- 2. XText:使用自定义终端定义
- 3. 自定义线行为不端
- 4. Cmd提示与Ubuntu终端相同吗?
- 5. 使用bash_profile自定义终端命令
- 6. 终端不工作颜色提示
- 7. jQuery工具提示自定义提示
- 8. 从终端提示符
- 9. RHEL终端提示“未知”
- 10. 自定义线性布局不显示
- 11. Android Studio终端与自定义工作目录
- 12. 自定义终端命令与argparse和.profile
- 13. 如何打开与默认终端不同的新终端?
- 14. 自定义工具提示
- 15. 自定义工具提示
- 16. 重试提示自定义
- 17. Highcharts angular.js自定义提示
- 18. 自定义adb提示
- 19. 自定义工具提示
- 20. Linux终端不显示任何与ncurses
- 21. 与来自AWS EC2终端
- 22. @ Html.ValidationMessageFor()自定义validationMessage始终显示
- 23. 谷歌图表 - 自定义工具提示的折线图(线包)不工作
- 24. 重新启动终端后,我不能再执行节点
- 25. ListView与自定义ArrayAdapter不更新
- 26. 显示与前端自定义分类标准链接的自定义元域
- 27. Wordpress REST API自定义终端,不能使用ID参数
- 28. 线程终止(再次...)
- 29. Python:如何在新的终端窗口/命令提示符下执行线程?
- 30. 自定义显示与Maronette
可能重复的[终端不能使用颜色提示](http://stackoverflow.com/questions/6950769/terminal-not-working-with-color-prompt) – Kevin