LinuxProbe 发表于 2021-2-1 00:30:02

如何修改Bash Shell的提示符的格式和配色


我们大多数使用的shell提示符,显示用户名、主机名和当前所在目录。在本文将会介绍如何定制一个自己喜欢的Bash。
了解BASH
shell的提示符是通过一个特殊的shell变量PS1来控制的。还有其他变量,比如PS2、PS3和PS4。Bash在准备读取命令时显示第一个提示符变量PS1。当它需要更多的输入来完成一个命令时,它会显示第二个提示符变量PS2。bash允许通过插入一些“反斜杠”\转义的特殊字符来定制这些提示字符串。显示当前Bash提示符
# echo $PS1[\u@\h \W]\$每个被转义的特殊字符解释如下:
[*]\u: 显示当前用户
[*]\h: 显示主机名
[*]\W: 打印当前所在目录
[*]\$: 如果有效UID为0,则显示#(指的是root用户),否则显示$(指的是普通用户)
修改Bash提示符
如果想要使修改的shell提示否永久生效,可以把变量写在家目录下面的.bashrc文件里面。若要想全局生效,所有用户都生效,可以写在/etc/bash.bashrc或者/etc/bashrc配置文件里面。例如:在提示符中显示用户名、主机名、目录所在的绝对路径、显示24小时制当前时间,将命令保存到~/.bashrc文件中。:# echo 'export PS1="[\\u@\\h \\W \\A]\\$ "' >> ~/.bashrc# source ~/.bashrc # https://www.linuxprobe.com/wp-content/uploads/2020/07/image1-3.png
以下是常用特殊字符:
[*]\u: 显示当前用户
[*]\w: 打印当前所在目录的绝对路径
[*]\W: 打印当前所在目录
[*]\h: 显示主机名
[*]\H: 显示完全合格域名
[*]\A: 显示当前时间24小时制
[*]\@: 显示当前时间12小时制
[*]\$: 如果有效UID为0,则显示#(指的是root用户),否则显示$(指的是普通用户)
[*]\j: 当前由shell管理的作业数量
为Bash提示符添加配色
一下是常用的配色,有修改字体颜色、修改为粗体、添加下划线、设置背景颜色等设置:'\e下面是配色方案,可以把自己喜欢的添加到~/.bashrc文件里面,然后让他生效:# export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e##export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e##export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e##export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \e#export PS1="\e\\$ \ehttps://www.linuxprobe.com/wp-content/uploads/2020/07/image2-3.png
如果想要使提示符的每个部分显示的颜色不同,下面一个例子可以了解一下: export PS1="\e\e命令解释:
[*]"[\e[35m[\\u: 开头添加中括号"[",当前登录的用户部分使用紫色字体
[*]\e[m@: "@"符号不给配色,使用默认颜色
[*]\e[36m\\h : 主机名称部分使用青色
[*]\e: 当前所在目录使用黄颜色,在其后面添加中括号"]"
[*]\e[1,33m\\$\e[m ": $符号加粗,使用黄颜色
https://www.linuxprobe.com/wp-content/uploads/2020/07/image3-3.png总结
在本文介绍了如何定制一个自己喜欢的Bash Shell提示符,希望可以帮助大家。

wjlovezzd 发表于 2021-2-1 07:52:04

{:6_267:}{:6_267:}{:6_267:}{:6_267:}{:6_267:}{:6_267:}{:6_267:}{:6_267:}{:6_267:}

ceshiwaitui 发表于 2021-2-1 08:28:16

页: [1]
查看完整版本: 如何修改Bash Shell的提示符的格式和配色