CentOS8 上的 Zsh 将 /usr/share/Modules 中的函数放在我的用户定义的函数之前

CentOS8 上的 Zsh 将 /usr/share/Modules 中的函数放在我的用户定义的函数之前

对于以下问题的任何建议将不胜感激。

我在 CentOS8 上运行 zsh。我面临以下问题: shell 似乎不愿意将我的用户定义函数放在第一位。

echo $fpath首先给我/usr/share/Modules/init/zsh-functions,然后才给我/home/user/bin/fns /usr/local/share/zsh/site-functions /usr/share/zsh/site-functions /usr/share/zsh/5.5.1/functions

我的 .zshenv 文件内容如下:

export EDITOR=/usr/bin/vim
export VISUAL=/usr/bin/vim

typeset -U path
path=(~/bin ~/progs/bin $path)
[[ $fpath = *user* ]] || fpath=(~user/bin/fns $fpath)
autoload ${fpath[1]}/*(:t)

[注:实际user-name改为通用user。]

这与我在基于 OSX 和 Debian 的系统上使用的同一个 .zshenv 文件没有任何问题。我觉得我错过了一些明显的东西,但我一生都无法理解它是什么以及为什么 CentOS 上的行为不同。多次谷歌搜索结果没有什么帮助,我现在发现自己对着屏幕尖叫咒骂......

感谢您花时间阅读本文,并提前感谢您提供任何有用的建议。

相关内容