所以,我刚刚按照此处的建议,在我可以通过 SSH 访问(但重要的是,没有 root 访问权限)的机器上安装了 zsh 。然后我继续尝试安装 Oh My Zsh,并收到以下消息:
Zsh is not installed! Please install zsh first!
Run Code Online (Sandbox Code Playgroud)
这并不令人惊讶。检查安装脚本后,检查是否安装了 zsh 的代码是:
CHECK_ZSH_INSTALLED=$(grep /zsh$ /etc/shells | wc -l)
if [ ! $CHECK_ZSH_INSTALLED -ge 1 ]; then
printf "${YELLOW}Zsh is not installed!${NORMAL} Please install zsh first!\n"
exit
fi
unset CHECK_ZSH_INSTALLED
Run Code Online (Sandbox Code Playgroud)
因此,如果没有 root 访问权限,我无法编辑 /etc/shells.conf 文件。还需要注意的是,当我通过 SSH 进入这个系统时,我不一定登录到同一台物理机器;相反,我登录到几台机器之一,我的主目录被复制到其中。目前我的代码中.profile有添加~/bin到我的代码$PATH并在登录时启动 zsh。
基本上,有没有办法解决这个问题?我认为可以修改安装脚本以适应将 zsh 安装到 ~/bin/zsh 的情况,但是如果不是不明智的话,仅仅盲目地删除检查逻辑当然似乎没什么。