你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

修改Bash Shell的提示符的格式和配色的方法

[复制链接]
gaosmile 发布时间:2020-8-9 21:51

启动 Linux 桌面环境自带的终端模拟包,或者从 Linux 控制台登录后,便可以看到 Shell 命令提示符。看见命令提示符就意味着可以输入命令了。命令提示符不是命令的一部分,它只是起到一个提示作用。不同的 Linux 发行版使用的提示符格式大同小异。

shell的提示符是通过一个特殊的shell变量PS1来控制的。还有其他变量,比如PS2、PS3和PS4。Bash在准备读取命令时显示第一个提示符变量PS1。





显示当前Bash提示符



  1. [root@localhost ~]# echo $PS1
  2. [\u@\h \W]\$
复制代码

执行命名之后,输出的各种转义的符号,每个被转义的字符含义如下:

  • \u: 显示当前用户
  • \h: 显示主机名
  • \W: 打印当前所在目录
  • $: 如果当前用户是root用户,显示#,否则显示$




修改Bash提示符


比如我想在提示符中显示用户名、主机名、目录所在的绝对路径、显示24小时制当前时间,可以运行如下命令:


  1. $ echo 'export PS1="[\\u@\\h \\W \\A]\\$ "' >> ~/.bashrc
  2. $ source ~/.bashrc
复制代码


执行完成之后,可以看到我命令提示增加了时间显示,如下图:

微信图片_20200809214833.jpg image

在上述命令中,控制时间显示的参数如下:

  • \A: 显示当前时间24小时制
  • @: 显示当前时间12小时制

如果想要使修改的shell提示永久生效,可以把变量写在家目录下面的.bashrc文件里面。若要想全局生效,所有用户都生效,可以写在/etc/bash.bashrc或者/etc/bashrc配置文件里面。





为Bash提示符添加配色


Bash提示符有很多配色,我们先一睹为快:

微信图片_20200809214836.jpg image

如上图我分别执行了黑色、红色、黄色、白色的配色,执行红色的命令是:


  1. export PS1="\e[0;31m[\\u@\\h \\W]\\$ \e[m "
复制代码


更多的配色方案如下:


  1. '\e[0;30m' # 黑色
  2. '\e[0;31m' # 红色
  3. '\e[0;32m' # 绿色
  4. '\e[0;33m' # 黄色
  5. '\e[0;34m' # 蓝色
  6. '\e[0;35m' # 紫色
  7. '\e[0;36m' # 青色
  8. '\e[0;37m' # 白色
  9. '\e[1;30m' # 黑色 粗体
  10. '\e[1;31m' # 红色 粗体
  11. '\e[1;32m' # 绿色 粗体
  12. '\e[1;33m' # 黄色 粗体
  13. '\e[1;34m' # 蓝色 粗体
  14. '\e[1;35m' # 紫色 粗体
  15. '\e[1;36m' # 青色 粗体
  16. '\e[1;37m' # 白色 粗体
  17. '\e[4;30m' # 黑色 下划线
  18. '\e[4;31m' # 红色 下划线
  19. '\e[4;32m' # 绿色 下划线
  20. '\e[4;33m' # 黄色 下划线
  21. '\e[4;34m' # 蓝色 下划线
  22. '\e[4;35m' # 紫色 下划线
  23. '\e[4;36m' # 青色 下划线
  24. '\e[4;37m' # 白色 下划线
  25. '\e[40m' # 黑色 背景
  26. '\e[41m' # 红色 背景
  27. '\e[42m' # 绿色 背景
  28. '\e[43m' # 黄色 背景
  29. '\e[44m' # 蓝色 背景
  30. '\e[45m' # 紫色 背景
  31. '\e[46m' # 青色 背景
  32. '\e[47m' # 白色 背景
  33. '\e[0m' # 重置为默认值
复制代码


如果想为提示符的每个部分显示的颜色不同,该如何使用呢?比如要让当前用户名、主机、目录显示的颜色都不一样:


  1. export PS1="\e[31m[\\u\e[m@\e[35m\\h \e[32m\\W]\e[1;33m\\$\e[m "
复制代码

微信图片_20200809214839.jpg image
  • \e[31m[\u: 当前登录的用户使用红色字体
  • \e[m@: "@"符号不给配色,使用默认颜色
  • \e[35m\h : 主机名称使用紫色
  • \e[32m\W]: 当前所在目录使用绿色,在其后面添加中括号"]"
  • \e[1;33m\$\e[m ": $符号加粗,使用黄颜色

大家可以用上述方法来定制自己喜欢的颜色。


收藏 评论0 发布时间:2020-8-9 21:51

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版