目录

多云下的zsh

目录

概述

这里主要是指你有多个云主机,为了避免误操作,最好打开 zsh 的时候,能够显示 ip,否则操作了哪个都不知道,可以参考下面这个方法

操作

/%E5%A4%9A%E4%BA%91%E4%B8%8B%E7%9A%84zsh/img.png

下面是一个简单的替换脚本。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
cp ~/.oh-my-zsh/themes/robbyrussell.zsh-theme ~/.oh-my-zsh/themes/robbyrussell.zsh-theme.bak
cat > ~/.oh-my-zsh/themes/robbyrussell.zsh-theme <<"EOF"
# 这个函数是获取ip的关键,不同机器可能会有些区别
function get_ip_address() {
    ifconfig | grep "inet " |grep -i  "broadcast 192.168.1.255" | awk '{print $2}'
}
PROMPT='%(!.%{%F{yellow}%}.)$USER@%{$fg[green]%}$(get_ip_address)%{$fg_bold[red]%}>%{$fg_bold[green]%}%p%{$fg[cyan]%}%c%{$fg_bold[blue]%} $(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
EOF
# 恢复原来的设置
cp ~/.oh-my-zsh/themes/robbyrussell.zsh-theme.bak ~/.oh-my-zsh/themes/robbyrussell.zsh-theme

# 固定一个ip
cat > ~/.oh-my-zsh/themes/robbyrussell.zsh-theme <<"EOF"
# 这个函数是获取ip的关键,不同机器可能会有些区别
function get_ip_address() {
    ifconfig | grep "inet " |grep -i  "broadcast 192.168.1.255" | awk '{print $2}'
}
PROMPT='%(!.%{%F{yellow}%}.)$USER@%{$fg[green]%}121.36.45.162 %{$fg_bold[red]%}>%{$fg_bold[green]%}%p%{$fg[cyan]%}%c%{$fg_bold[blue]%} $(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
EOF

下面是最终的效果。

/%E5%A4%9A%E4%BA%91%E4%B8%8B%E7%9A%84zsh/img_1.png
警告
本文最后更新于 2017年2月1日,文中内容可能已过时,请谨慎参考。