Bash 提示符配置指南

Apr 29, 2026 · 1805 字

一般来说安装的 Ubuntu 等 Linux 发行版的 Bash 提示符都是默认的。但是笔者最近使用 TencentOS Server 4 的时候发现系统没有默认的 .bashrc 文件,也就没有提示符,经常需要输入 pwd 来查看当前路径,非常的不便。遂研究了一下如何设置 bash 的提示符。

绝大多数的 Shell 都是通过 PS1 环境变量来设置提示符的。PS1 是 Primary Prompt String 的缩写,表示主提示符字符串。你可以在 PS1 中使用各种占位符来显示不同的信息,比如用户名、主机名、当前目录、时间等等。

只需要在 ~/.bashrc 文件中添加一行代码来设置 PS1 变量即可。例如:

export PS1='\[\e[32m\]\u@\h\[\e[0m\]:\[\e[34m\]\w\[\e[0m\]\$ '

PS1 占位符列表

不同的 Shell 可能支持不同的占位符,以下是 Bash Shell 中常用的 PS1 占位符列表:

占位符说明
\u当前用户名
\h主机名(短格式)
\H完整主机名
\w当前工作目录(完整路径)
\W当前工作目录(仅目录名)
\d当前日期(Mon DD)
\t当前时间(HH:MM:SS)
\T当前时间(12小时制 HH:MM:SS)
\@当前时间(12小时制,AM/PM)
\A当前时间(24小时制 HH:MM)
\jshell 中的后台作业数
\lshell 的终端设备名
\n换行符
\r回车符
\sshell 的名称
\vbash 版本
\Vbash 版本和补丁级别
\eANSI 转义符(\033
\\反斜杠
\$如果 UID=0 显示 #,否则显示 $
\!当前命令的历史记录号
\#当前 shell 会话中的命令号
\nnn八进制值为 nnn 的字符
\[不可打印字符序列的开始(用于颜色控制)
\]不可打印字符序列的结束(用于颜色控制)

你也可以使用 https://bash-prompt-generator.org/ 这样的工具来生成你喜欢的 PS1 提示符。

此外还有 starship 这样的跨平台提示符工具,支持多种 shell 和操作系统,可以提供更丰富的功能和美观的界面,但需要额外安装和配置。

粤ICP备2025414119号 粤公网安备44030002006951号

© 2026 Saurlax · Powered by Astro