为什么在获取文件后,用户@主机名的颜色会发生变化?

为什么在获取文件后,用户@主机名的颜色会发生变化?

我注意到每当我获取文件时,用户@主机名的颜色就会发生变化:

在此处输入图片描述

为什么?

答案1

因为它会加载文件中指定的用户设置/etc/bash.bashrc。提示设置可能与您的实际终端上下文不同。有关更多详细信息,请查看其他已点赞的答案。:)

答案2

这是因为 /etc/bash.bashrc 为您的提示设置了一个新值:

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
# but only if not SUDOing and have SUDO_PS1 set; then assume smart user.
if ! [ -n "${SUDO_USER}" -a -n "${SUDO_PS1}" ]; then
  PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi

答案3

的外观迅速的user@host事物)由变量控制PS1。可能你有类似的东西

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

在您的~/.bashrc文件中。奇怪的\[\033[00m\]等字符用于为提示着色。 \u是用户名(h4ck3r),\h是主机名(h4ck3rE780),\w是当前工作目录(~表示您的 HOME 目录)。

当你输入源时/etc/bash.bashrc,变量PS1会被设置为其他值(没有颜色),然后你会得到不同的提示。这很简单。

尝试

PS1='user=\u, host=\h, directory=\w $'

在终端窗口中查看结果。 Sourcing/etc/bash.bashrc不会做任何不同的事情(除了实际参数)。

相关内容