8

我在 iterm2 上安装了 Oh-my-zsh。每当运行 ssh 时,如何让我的终端更改主题?如果脚本还将背景更改为导入的预设之一,那就太好了。

我是一个完整的 bash 菜鸟。请用新手语言解释。

4

2 回答 2

16

您需要知道的第一件事是.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 语句,然后自定义它

于 2017-06-21T22:54:10.127 回答
6

您可以在提示符前添加主机名。

遵循这个要点

只需将此文件的内容粘贴到:

~/.oh-my-zsh/themes/robbyrussell.zsh-theme

然后基本上在您的本地机器上:

在此处输入图像描述

在你的远程机器上:

在此处输入图像描述

就我而言,ded12 是我的遥控器的主机名,我只更改了我的遥控器上的主题文件,如果我在本地更改它,我的本地主机名也会在提示之前

于 2018-05-15T17:26:05.053 回答