2

我想在Powerline-Plain [Bash-it]主题的提示符开头显示主机名。

类似于:MYHOSTNAME root /var/www

这是默认外观: 根 /var/www

我想为每个不同的主机名分配不同的随机和固定颜色。

4

2 回答 2

0

\h是您在 bash 提示符中显示主机名所需要的。为了让它以某种颜色出现,您需要将该部分包装在您喜欢的颜色代码中。例如,当您是 root 时,您可以像这样定义颜色 RED。

USERCOLOR='\[\e[1m\]'
NORMCOLOR='\[\e[m\]'
# If I am root, set the prompt to bright red
if [ ${UID} -eq 0 ]; then USERCOLOR='\[\e[1;31;7;47m\]'; fi
PS1="[$USERCOLOR\h$NORMCOLOR]\\n\#-\\$> "
于 2018-01-11T21:58:11.433 回答
-1

Bash-it Powerline 文档中所述,您可以使用该hostname名称将主机名添加到您的 Powerline 提示符中:

提示的内容可以“重新排序”,所有“段”(每条信息)都可以出现在任何位置。当前可用的段是:

  • aws_profile- 显示 AWS_PROFILE 环境变量的当前值
  • battery- 电池信息(您需要启用电池插件)
  • clock- HH:MM:SS 格式的当前时间
  • cwd- 当前工作目录,包括完整的文件夹层次结构(cf wd)
  • hostname- 机器的主机名
  • in_vim- 如果在 vim 的终端中运行,则显示标识符
  • k8s_context- 显示当前 Kubernetes 上下文
  • last_status- 上次运行命令的退出状态
  • python_venv- Python 虚拟环境信息(支持 virtualenv、venv 和 conda)
  • ruby- 如果使用 rvm,则为当前 ruby​​ 版本
  • node- 当前节点版本(仅支持 nvm)
  • scm- 版本控制信息,git
  • user_info- 当前用户
  • wd- 工作目录,如 cwd,但不显示完整的文件夹层次结构,仅显示您当前所在的目录。
  • shlvl- 显示当前 shell 级别(基于 SHLVL 环境变量),但前提是您不在 root shell 中
  • dirstack- 显示当前的 dirstack 级别(基于 DIRSTACK 环境变量),但前提是堆栈不为空
  • history_number- 显示当前历史编号
  • command_number- 显示当前命令号

可以定义一个变量来设置提示段的顺序:

POWERLINE_PROMPT="user_info scm python_venv ruby cwd"

基于此,您可以将hostname段添加到POWERLINE_PROMPT变量中(例如,在您的 Bash 配置文件中):

export POWERLINE_PROMPT="hostname user_info scm python_venv ruby cwd"

这会将主机名添加为提示中的第一个条目。

Bash-it 目前没有为提示段分配随机颜色的功能。

于 2020-01-06T08:44:33.080 回答