运行ssh时更改oh-my-zsh主题

use*_*472 7 terminal zsh iterm2 oh-my-zsh

我在iterm2上安装了Oh-my-zsh.每当运行ssh时,如何使终端更改主题?如果脚本还将背景更改为导入的其中一个预设,那将是很好的.

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

Pao*_*aez 10

您需要知道的第一件事是.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
Run Code Online (Sandbox Code Playgroud)

您可以使用此示例来实现您的目标,就这样:

if [[ -n $SSH_CONNECTION ]]; then
  ZSH_THEME="robbyrussell"
else
  ZSH_THEME="agnoster"
fi
Run Code Online (Sandbox Code Playgroud)

robbyrussell将在您的SSH会话中使用,并agnoster为休息.因此,只需将上面设置主题的行替换为上面的if/else语句,然后对其进行自定义


Mag*_*gus 6

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

遵循这个要点

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

~/.oh-my-zsh/themes/robbyrussell.zsh-theme
Run Code Online (Sandbox Code Playgroud)

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

在此处输入图片说明

在你的远程机器上:

在此处输入图片说明

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