mac设置iterm2的Badge

导语:使用跳板机或者直接ssh的时候,因为宿主机名称和terminal的原因,显示不了ip,还因此出现过几次误操作。想通过显示ip的方式减少自己因为弄错机器造成的失误。发现有Badge这个东西,结合网上一些文章在iterm2中动态显示一些定制化信息。

iterm2中修改Default下Profiles的General输入Badge为\(session.name)

mac设置iterm2的Badge_第1张图片

在测试登录的服务器的 ~/.bashrc 添加如下内容

cat ~/.bashrc


if [ "$SSH_CONNECTION" != '' -a "$TERM" != 'linux' ]; then
declare -a HOSTIP
HOSTIP=`echo $SSH_CONNECTION |awk '{print $3}'`
export PROMPT_COMMAND='echo -ne "\033]0;${USER}@$HOSTIP:[${HOSTNAME%%.*}]:${PWD/#$HOME/~} \007"'
fi
# 这个不加有些服务器依旧需要手动
source /etc/profile

如果有问题的话/etc/profile中也添加一下

if [ "$SSH_CONNECTION" != '' -a "$TERM" != 'linux' ]; then
declare -a HOSTIP
HOSTIP=`echo $SSH_CONNECTION |awk '{print $3}'`
export PROMPT_COMMAND='echo -ne "\033]0;${USER}@$HOSTIP:[${HOSTNAME%%.*}]:${PWD/#$HOME/~} \007"'
fi

内容可以根据需要自定义

printf "\e]1337;SetBadgeFormat=%s\a" \
  $(echo -n "\(session.name) \(user.gitBranch)" | base64)

登录跳板机测试流程,注意图片右边的变化

mac设置iterm2的Badge_第2张图片

mac设置iterm2的Badge_第3张图片

mac设置iterm2的Badge_第4张图片

参考

https://iterm2.com/documentation-badges.html

https://iterm2.com/documentation-scripting-fundamentals.html

https://www.cnblogs.com/xingkoo/archive/2013/06/06/3120953.html

https://blog.csdn.net/specialsun/article/details/104451405

你可能感兴趣的:(mac,macos,服务器,运维)