如何在 Linux 命令行提示符中显示主机名

如何在 Linux 命令行提示符中显示主机名

我有几个虚拟机,现在我的命令行提示符看起来像-bash-3.2$;每个虚拟机上都相同,因为它不包含主机名。hostname在执行任何操作之前,我需要始终查看正在使用哪个虚拟机。如何将主机名添加到 shell 提示符中?

环境:CentOS/ssh

答案1

查看您的~/.bashrc~/.profile,可能有一个带注释的提示设置可以执行您想要的操作,就像我们的基础设施中的这个:

export PS1='\h:\w\$ '

看起来像:

coolservername:~# 

或者,如果您计划以非 root 身份登录,则可以使用:

 export PS1='\u@\h:\w\$ '

在主机名之前添加用户名。

您可以在提示中添加颜色、多行或任何您想要的信息,快速搜索“bash 提示”应该会给您提供大量提示。

答案2

只需更改环境变量的值$PS1

PS1="\h$ "

其中\h替换为主机名。将其添加到/etc/bash.bashrc以将其设置为永久。

答案3

我喜欢 shell 提示符显示用户名、主机名和工作目录的名称。此外,我喜欢所有这些都以颜色显示。所以我通常会放

export PS1='\[\033[0;32m\]\u@\h:\[\033[36m\]\W\[\033[0m\] \$ '
 

~/.bashrc。要立即应用更改,请致电

. ~/.bashrc

另外,如果您使用 root 切换,su最好能看到不同颜色的 bash 提示符,这样您就需要格外小心。为此,我添加了这一行

export PS1='\[\033[0;31m\]\u@\h:\[\033[36m\]\W\[\033[0m\] \$ '

进入/root/.bashrc。并打电话

. /root/.bashrc

应用更改。然后看起来像这样

在此输入图像描述

VPS 服务器管理员经常提供愚蠢的主机名。为了改变它,打开/etc/sysconfig/network并改变线路

HOSTNAME=put_a_name_that_you_want_to_see_in_bash_prompt_here

如果您想要username@host部分使用不同的颜色,则必须更改0;32m第一个示例中的部分或0;31m第二个示例中的部分。可以找到可用颜色列表这里

由于是.bashrc针对非登录 shell 执行的,因此不要忘记仔细检查

if [ -f ~/.bashrc ]; then
         . ~/.bashrc
fi

存在于 中~/.bash_profile,因为~/.bash_profile在您登录时执行。并将相同的部分添加到/root/.bash_profile.

答案4

除了更改提示之外,konsolegnome 终端模拟器的配置中还有一个选项,它将更改标题栏(或选项卡标题)。

相关内容