在终端提示符中显示漂亮的主机名?

我的当前Ubuntu提示设置为类似的样式
athos@myT460pLaptopBoughtAt2016 ~$ echo $PS1
[\u@\h \W]\$

在这里,h 代表着 静态主机名,正如你所见,它相当长。

另一方面,我已经设置了 漂亮的主机名

~$ hostnamectl
   Static hostname: myT460pLaptopBoughtAt2016
   Pretty hostname: T460p
...

有没有办法在提示符中引用“漂亮的主机名”而不是“静态主机名”?
1个回答

如果你想在你的.bashrc文件(或者你定义$PS1的地方)中用以下自定义函数替换\h:
$(hostnamectl | awk '/Pretty hostname/ { printf $3 }')

应该可以解决问题。

您可以通过输入以下内容来测试函数的输出:

echo $(hostnamectl | awk '/Pretty hostname/ { printf $3 }')