提示字符串中的主机名是“localhost”

提示字符串中的主机名是“localhost”

我正在尝试将提示更改为我使用的主机名 (Aidan) PS1=“\h \d \u]"

当我使用它时,它只会更改为“localhost”,有人知道我做错了什么吗?我在 GECOS 字段中创建了具有全名的用户。

答案1

如果您想要从 GECOS 字段中获取用户的真实姓名,我认为您需要手动获取它。我认为没有办法自动执行此操作,至少在 Bash 中是这样。

所以,

gecos=$(getent passwd $USER | cut -d: -f5 | cut -d, -f1)
PS1='$gecos ... \$ '

答案2

您需要将/etc/hostname的内容更改为您的主机的实际名称,然后重新启动。您可以使用“hostname”命令(如果以 root 身份登录)更改当前会话的主机名称,但如果您尚未更新 /etc/hostname ,则您所做的任何更改都将在下次重新启动时丢失。

相关内容