Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Terminal 运行ssh时更改oh my zsh主题_Terminal_Zsh_Iterm2_Oh My Zsh - Fatal编程技术网

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

Terminal 运行ssh时更改oh my zsh主题,terminal,zsh,iterm2,oh-my-zsh,Terminal,Zsh,Iterm2,Oh My Zsh,我在iterm2上安装了Oh my zsh。如何在运行ssh时更改终端主题?如果脚本还将背景更改为导入的预设之一,那就太好了 我是个彻头彻尾的笨蛋。请用新手语言解释。您需要知道的第一件事是.zshrc是在您在zsh上打开新会话之前运行的脚本。因此,假设zsh是您的默认shell,当您在本地计算机上打开终端时,它将运行.zshrc。当您打开到该机器的ssh会话时,它也会运行.zshrc 在.zshrc中,您可以找到注释过的代码: # Preferred editor for local and r

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


我是个彻头彻尾的笨蛋。请用新手语言解释。

您需要知道的第一件事是.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是我的遥控器的主机名,我只更改了遥控器上的主题文件,如果我在本地更改它,那么本地主机名也会在提示符之前