如何在 Linux 上更改 Bash Shell 提示符的颜色
本文将向您展示如何更改 Linux 终端提示符的用户、主机和目录信息的颜色。
默认情况下,许多 Linux 安装都带有简单的黑白彩色提示。然而,由于 Linux 用户在终端模拟器上花费了大量时间,因此如果我们能够在视觉上改善我们的体验,那就太好了。
因此,为了遵循“一张图片胜过一千个文字”的格言,让我们展示一下我们的意思。
我们想要这个:
变成这样:
Linux 最好的事情之一就是无限的定制选项。命令提示符也不例外。但在我们进一步讨论之前,让我们先了解一些理论。
了解 Linux 中的 PS1(提示语句)
您当前的 Bash 提示设置保存在名为 PS1 的 shell 变量中,它代表 Prompt Statement。在 Linux 中,PS1 被称为主要提示变量。该变量在 $HOME/.bashrc 文件中定义并保存。
此外,准确来说,还多了三个变量,包括PS2、PS3、PS4。但是,由于它们的目的与更改 Linux 终端中提示符的颜色无关,因此我们不会深入讨论它们。
要查看当前 PS1 值,请键入以下内容:
echo $PS1根据所使用的 Linux 发行版,终端将输出类似默认设置的内容。在我们的示例中,这是运行 Ubuntu 22.04 的 Linux 计算机的结果。
我知道;这似乎令人困惑。但别担心;下面的几行将使一切变得更加透明。
暂时忽略上面一行中的所有内容,仅关注 \u@\h:\w\$ 部分。这就是我们所关心的。其中,u 代表用户名,h 代表主机名,w 代表当前工作目录。
为了使事情更加精确,让我们这样说:
我希望这已经为您澄清了一些事情。那么,让我们继续讨论指南的重点内容。
如何在 Linux 上更改 Bash Shell 提示符的颜色
首先,在您喜欢的文本编辑器中打开 .bashrc 文件,查看是否存在 force_color_prompt=yes 行。然后,删除其前面的注释(# 符号)并保存文件(如果该行存在)。
vim ~/.bashrc现在是时候亲自动手让 Linux shell 提示符变得丰富多彩了。因此,打开 .bashrc 文件并查找定义 PS1 变量的行。
vim ~/.bashrc我知道这对你来说可能难以理解,但不要为此烦恼。请记住,这是决定 Linux 中命令提示符外观的变量。
接下来的步骤是定义新的 PS1 变量。但是,为了安全起见,我们将其注释掉,这样如果我们搞砸了,我们可以随时参考它。
然后,我们将通过添加以下行来创建一个新的 PS1 变量,该变量会为您的 Linux 终端提示符着色。
PS1='\[\033[1;32m\]\u\[\033[1;37m\]@\[\033[1;36m\]\h\[\033[00m\]:\[\033[1;34m\]\w\[\033[00m\]\$ '如果您不明白这意味着什么,请不要担心;下面解释一下。
要自定义 Bash 提示符,您只需添加、删除或重新排列 PS1 变量中的特殊字符。请密切注意各个部分,例如 1;32m、1;37m、1;36m 等。这些是 Bash 的颜色代码。这些代码由一系列数字表示,并用分号加 m 字母分隔。
以下是 Bash Shell 中可用的颜色代码列表。
正如您已经猜到的,这只是替换/添加值的问题。例如,u 前面的值指的是用户名部分。 @ 字符前面的值用于 @ 字符。 h 前面的值对应于主机名部分等。
完成后,保存修改并退出 .bashrc 文件。要使更改立即生效,请执行:
source ~/.bashrc就是这样。我们的 Linux 系统现在有一个彩色的 Bash shell 提示符。
结论
您现在应该能够在 Linux 上更改 Bash shell 提示符的颜色。然后,当然,您可以选择您最喜欢的颜色并设计最适合您的配色方案。
我强烈推荐这两本指南,以便更深入地了解在 Linux 中自定义 shell 提示符的可能性:此处和此处。
我希望您觉得这篇文章很有趣。请在下面的评论部分表达您的想法。非常感谢您的反馈和评论。










