1.官网文档有解释,大概率是加载 nvm 时间长的原因;
2.加载顺序 .zlogin
.zprofile
.zshrc
.zshenv
.zlogout
说明:
.zshenv
总是被读取,所以通常把EDITOR等变量写在这里,这样无论是在shell交互,或者运行程序都会读取此文件
.zshrc
主要用在交互shell,所以主要是为shell服务的,比如对shell做的一些个性化设置都可以在这里写入
.zlogin
在login shell的时候读取,\系统启动的时候会读取此文件,所以不会再运行中重复读取
.zlogout
这个就很好理解了, 退出终端的时候读取,用于做一些清理工作
3.将耗时操作懒加载
rvm() {
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
[ -s "$HOME/.rvm/scripts/rvm" ] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
}
nvm() {
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && \. "/usr/local/opt/nvm/nvm.sh" # This loads nvm
[ -s "/usr/local/opt/nvm/etc/bash_completion. d/nvm" ] && \. "/usr/local/opt/nvm/etc/bash_completion. d/nvm" # This loads nvm bash_completion
}
- 测试加载时间
> time zsh -i -c exit
网友评论