首页 > 解决方案 > Bash PS1 提示设置 \h 在第一个点之后去除主机名

问题描述

我的系统主机名是这样的:192.168.2.1_machine05我的 bash 提示$PS1设置是[\u@\h \W]\$.

由于主机名中有一个点字符,因此该\h变量仅提取第一个点字符之前的字符串的第一部分,而忽略第一个点之后的其余字符。

为了避免它,我必须使用:PS1='[\u@$(uname -n) \W]\$ '

我可以让这个\h变量显示完整的主机名吗?

标签: bash

解决方案


根据 bash手册(在第 节PROMPTING):

\h     the hostname up to the first `.'
\H     the hostname

推荐阅读