3 ms·
The other difference is that zsh has a .zshenv (and /etc/zshenv), while bash only has $BASH_ENV, which only happen if it's set. /etc/zshenv is always sourced,
by pyre 14y ago
The other difference is that zsh has a .zshenv (and /etc/zshenv), while bash only has $BASH_ENV, which only happen if it's set.
/etc/zshenv is always sourced, and there's no way to stop that. On the other hand, you can control if /etc/zshrc (etc) are sourced with:
unsetopt GLOBAL_RCS
IGNORE_SYSTEM_ZSH=1
But you would have to put it in .zshenv for it to get sourced at the right time.
- masklinn 14y agoYeah, my point was simply that other advanced shells have as many files they may source as bash (if not more), with similar naming conventions. So holding that against bash and bash alone didn't make much sense. The details and decision tree of zsh's initialization are rather well documented already (if complex) and beyond the scope of making that point.