我想在Powerline-Plain [Bash-it]主题的提示符开头显示主机名。
类似于:MYHOSTNAME root /var/www
我想为每个不同的主机名分配不同的随机和固定颜色。
\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\#-\\$> "
如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
- 版本控制信息,gituser_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 目前没有为提示段分配随机颜色的功能。