无root条件安装zsh和oh-my-

zsh是一大终端利器, 什么?你还不知道?
不仅是样式而且在自动补全等等功能完爆bash,谁用谁知道! 无root条件安装zsh和oh-my-
如何在一个没有root环境的账户下配置呢? 这时候就要我们自己编译zsh了
参考:

  1. 安装zsh

首先从sourceforge下载zsh

wget -O zsh.tar.gz https://sourceforge.net/projects/zsh/files/latest/download
mkdir zsh && tar -xvf zsh.tar.gz -C zsh --strip-components 1
cd zsh
# 配置,比如将Zsh安装到~下
./configure --prefix=$HOME
make
make install

网上给的解压的部分多为tar -xvzf zsh.tar.gz但实际上我用的时候提示文件并没有被压缩, 所以我去掉了z

我这里将它直接安装到了~文件夹下, 安装过后home文件夹出现了sharebin文件夹,然后运行zsh有反应, 说明安装成功了
还是推荐安装到$HOME/usr目录下

  1. 安装oh-my-zsh

克隆oh-my-zsh到本地, 手动执行

wget --no-check-certificate https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh
bash install.sh
  1. 出现问题
    并没有出现网上所说的, 安装完oh-my-zsh出现相关字样. 反倒是在运行zsh的时候, 出现:
/public/liangy/.oh-my-zsh/lib/theme-and-appearance.zsh:2: colors: function definition file not found
/public/liangy/.oh-my-zsh/oh-my-zsh.sh:76: compinit: function definition file not found
/public/liangy/.oh-my-zsh/plugins/git/git.plugin.zsh:83: command not found: compdef
/public/liangy/.oh-my-zsh/plugins/git/git.plugin.zsh:98: command not found: compdef
...

无root条件安装zsh和oh-my-
这是因为oh-my-zsh没有找到我们的zsh,所以我们需要手动指定

  1. 修改oh-my-zsh配置

参考githubissuehttps://github.com/robbyrussell/oh-my-zsh/issues/4607
Add export FPATH=$HOME/usr/share/zsh/'version of zsh'/functions:$FPATH in your .zshrc

这里, 我们只需要稍作修改
export FPATH=$HOME/share/zsh/'version of zsh'/functions:$FPATH
因为我们的zsh源码位于~/share/zsh里, 所以这一步与其他不同

配置成功
无root条件安装zsh和oh-my-