我在 iterm2 上安装了 Oh-my-zsh。每当运行 ssh 时,如何让我的终端更改主题?如果脚本还将背景更改为导入的预设之一,那就太好了。
我是一个完整的 bash 菜鸟。请用新手语言解释。
您需要知道的第一件事是.zshrc是在您在 zsh 上打开新会话之前运行的脚本。因此,假设 zsh 是您的默认 shell,当您在本地计算机上打开终端时,它会运行.zshrc。当您打开与该机器的 ssh 会话时,它也会运行.zshrc!
在.zshrc中,您可以找到注释的那段代码:
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
您可以使用此示例来实现您的目标,就是这样:
if [[ -n $SSH_CONNECTION ]]; then
ZSH_THEME="robbyrussell"
else
ZSH_THEME="agnoster"
fi
robbyrussell将在您的 ssh 会话中使用,其余部分使用agnoster。因此,只需将您设置主题的行替换为上面的 if/else 语句,然后自定义它
您可以在提示符前添加主机名。
遵循这个要点
只需将此文件的内容粘贴到:
~/.oh-my-zsh/themes/robbyrussell.zsh-theme
然后基本上在您的本地机器上:
在你的远程机器上:
就我而言,ded12 是我的遥控器的主机名,我只更改了我的遥控器上的主题文件,如果我在本地更改它,我的本地主机名也会在提示之前