Ubuntu使SSH更美观的小技巧
柠凉·创建于 2026年10月7日
516字·1 分钟阅读
每次 SSH 登上服务器,迎面而来的总是那副朴素的面孔:
Bash
root@localhost:~#
其实只需要改一处 PS1,就能给终端换上一枚白底黑字的「徽章」提示符——黑字白底格外醒目,用户名、主机名、当前目录一目了然,同时开着好几台机器的窗口也不容易迷路。
修改 .bashrc
编辑 root 的配置文件(普通用户同理,改 ~/.bashrc):
Bash
vim /root/.bashrc
找到这段默认配置:
Bash
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
把它改成:
Bash
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
#PS1='\[\e[47;30m\][\u@QF \W]\$\[\e[m\] '
else
#PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
PS1='\[\e[47;30m\][\u@PUEH \W]\$\[\e[m\] '
fi
PUEH 是给主机起的花名,可以换成任何你喜欢的名字——家里的服务器叫 HOME、手头的 VPS 叫 QF,连上哪台一眼就知道。
让配置生效
在终端输入:
Bash
. ~/.bashrc
(. 和 source 等价,都是重新读取配置文件)
或者干脆重启服务器:
Bash
reboot
生效后,提示符就变成了一块黑字白底的「徽章」:
text
[root@PUEH ~]#
它是怎么变好看的
关键在 \[\e[47;30m\] 和 \[\e[m\] 这一对 ANSI 转义序列:
| 代码 | 含义 |
|---|---|
\e[ | ANSI 转义序列的开头 |
47 | 背景色:白色 |
30 | 前景色:黑色 |
\e[m | 复位,之后恢复默认配色 |
\u / \h | 用户名 / 主机名 |
\W | 当前目录的最后一截(家目录显示 ~) |
外层的 \[\] 告诉 bash:这段是不可见字符,别算进提示符宽度——漏了它,换行和退格就会错位。
💡 小提示:大多数 SSH 客户端的
$TERM是xterm-256color,color_prompt会是yes,走的是上面第一个分支。想让徽章提示符在彩色终端也生效,把yes分支里那行PS1也注释掉、换成徽章版即可——示例里两个分支各留了一行注释版,方便随时切换回来。
换个颜色?
对照这张 ANSI 色号表随便搭配(前景 30–37 配背景 40–47):
| 前景 | 颜色 | 背景 | 颜色 |
|---|---|---|---|
| 30 | 黑 | 40 | 黑 |
| 31 | 红 | 41 | 红 |
| 32 | 绿 | 42 | 绿 |
| 33 | 黄 | 43 | 黄 |
| 34 | 蓝 | 44 | 蓝 |
| 35 | 紫 | 45 | 紫 |
| 36 | 青 | 46 | 青 |
| 37 | 白 | 47 | 白 |
比如 42;30 是黑字绿底,45;97 是亮白字紫底。改完别忘了 . ~/.bashrc——一枚徽章就挂在了终端上 🏷️