Mic*_*rez 5 permissions zsh exec zshrc zsh-alias
大多数人似乎建议使用source
for reloading .zshrc
。为什么?
首先我试了一下source ~/.zshrc
。但它导致了compinit
错误(在重新加载时,而不是首次.zshrc
加载时的新 shell 实例)。
我的重新加载别名现在是:
alias zsh-reload="exec zsh"
Run Code Online (Sandbox Code Playgroud)
代替:
source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
造成这种情况的原因是我之前的reload方法(source
)触发了compinit错误;
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]?
Run Code Online (Sandbox Code Playgroud)
所以我现在正在做,exec
因为我相信它可以确保以前的环境不会污染新的环境。
exec
方法的缺点是什么?exec
还是source
?exec
在理论上导致相比意想不到的问题source
的方法?使用exec
,shell 中的所有(未导出的)变量都将丢失,这可能不是您想要的。相反,通过使用compinit -i
. 见zsh的男人页compinit款使用compinit的:
要使 compinit 静默忽略所有不安全的文件和目录,请使用选项 -i
归档时间: |
|
查看次数: |
1535 次 |
最近记录: |