有人能帮我理解为什么我的 Zsh 启动这么慢吗?我的 Zsh 需要 6 秒才能启动,所以我将zmodload zsh/zprof
和添加zprof
到我的 .zshrc 中以查看哪个花费的时间最多。输出如下:
-- console output produced during zsh initialization follows --
num calls time self name
-----------------------------------------------------------------------------------
1) 1 7432.11 7432.11 97.31% 4124.58 4124.58 54.01% nvm_auto
2) 2 3307.53 1653.77 43.31% 1874.60 937.30 24.55% nvm
3) 1 1211.54 1211.54 15.86% 1061.18 1061.18 13.89% nvm_ensure_version_installed
4) 1 198.66 198.66 2.60% 195.42 195.42 2.56% nvm_die_on_prefix
5) 1 150.37 150.37 1.97% 150.37 150.37 1.97% nvm_is_version_installed
6) 1 119.08 119.08 1.56% 119.08 119.08 1.56% compdump
7) 802 28.39 0.04 0.37% 28.39 0.04 0.37% compdef
8) 2 179.63 89.82 2.35% 26.56 13.28 0.35% compinit
9) 1 22.73 22.73 0.30% 22.73 22.73 0.30% nvm_has
10) 7 16.51 2.36 0.22% 13.53 1.93 0.18% (anon)
11) 4 6.10 1.53 0.08% 6.10 1.53 0.08% compaudit
12) 1 5.52 5.52 0.07% 5.52 5.52 0.07% zrecompile
13) 4 3.24 0.81 0.04% 3.24 0.81 0.04% nvm_npmrc_bad_news_bears
14) 1 1.42 1.42 0.02% 1.42 1.42 0.02% _p9k_init_ssh
15) 1 1.50 1.50 0.02% 1.02 1.02 0.01% _p9k_preinit
16) 1 0.94 0.94 0.01% 0.94 0.94 0.01% regexp-replace
17) 2 0.66 0.33 0.01% 0.66 0.33 0.01% is_plugin
18) 1 0.50 0.50 0.01% 0.50 0.50 0.01% colors
19) 4 0.35 0.09 0.00% 0.35 0.09 0.00% add-zsh-hook
20) 3 0.32 0.11 0.00% 0.32 0.11 0.00% is-at-least
21) 1 0.48 0.48 0.01% 0.22 0.22 0.00% gitstatus_start_p9k_
22) 1 0.18 0.18 0.00% 0.09 0.09 0.00% complete
23) 1 0.24 0.24 0.00% 0.07 0.07 0.00% prompt_powerlevel9k_setup
24) 1 0.07 0.07 0.00% 0.07 0.07 0.00% p10k
25) 1 0.15 0.15 0.00% 0.06 0.06 0.00% prompt_powerlevel9k_teardown
26) 2 0.04 0.02 0.00% 0.04 0.02 0.00% bashcompinit
27) 1 7432.14 7432.14 97.31% 0.03 0.03 0.00% nvm_process_parameters
28) 2 0.03 0.01 0.00% 0.03 0.01 0.00% is_theme
29) 1 0.03 0.03 0.00% 0.03 0.03 0.00% detect-clipboard
30) 2 0.02 0.01 0.00% 0.02 0.01 0.00% env_default
31) 2 0.17 0.08 0.00% 0.02 0.01 0.00% _p9k_setup
32) 1 0.01 0.01 0.00% 0.01 0.01 0.00% nvm_is_zsh
33) 2 0.01 0.01 0.00% 0.01 0.01 0.00% _p9k_restore_special_params
34) 1 0.01 0.01 0.00% 0.01 0.01 0.00% _p9k_init_toolbox
-----------------------------------------------------------------------------------
据我所知,nvm_auto 占用了启动时间的 97%,但我不确定如何才能加快速度?如果有人有什么好的建议或之前有过这种经历,我可以得到一些帮助吗?