如何在 shell 提示符中使用自定义主机名

通常,Linux shell 提示符如下所示

how-to-use-custom-hostname-in-shell-prompt.sh
user@hostname$

如果你想使用自定义字符串而不是 hostname,编辑 /etc/bash.bashrc: 并找到以下行:

bashrc_ps1_line.sh
  PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

现在,将 \h(即主机名)替换为你的自定义字符串。例如,如果你想使用 mycustomhostname 而不是实际主机名,该行应如下所示:

bashrc_custom_ps1_line.sh
  PS1='${debian_chroot:+($debian_chroot)}\u@mycustomhostname:\w\$ '

这可能仍然不会为单个用户覆盖它。如果是这种情况,你可以编辑 ~/.bashrc 中的 PS1= 行:

bashrc_user_ps1_line.sh
  PS1='${debian_chroot:+($debian_chroot)}\u@mycustomhostname:\w\$ '

通常,在 ~/.bashrc 中有两个不同的 PS1= 行,一个用于彩色输出,一个用于非彩色输出。

在两者中替换 \h

bashrc_ps1_block.sh
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

替换为 mycustomhostname 后,应如下所示:

bashrc_custom_ps1_block.sh
if [ "$color_prompt" = yes ]; then
  PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@mycustomhostname\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
  PS1='${debian_chroot:+($debian_chroot)}\u@mycustomhostname:\w\$ '
fi

Check out similar posts by category: Linux