I know that in linux(usually) such initialization file will be .bashrc (bash is the default shell), for OSX it will be .bash_profile. But there are also different shells, like zsh.
So I wonder, if I will have bash as the default shell, with it's configuration in .bashrc, and then I'll decide to run exec zsh
- what file would I need to edit to specify the initialization steps for zsh specifically? Are there separate files for different kinds of shells that are running while initialization a new terminal?
I tried to add some aliases before to my .bashrc to achieve the same result:
alias switch_to_zsh="exec zsh; source zsh_config.sh"
But after switching to zsh it forgets about source zsh_config.sh
part.
exec
will be run (ifexec
succeeds) asexec
will replace the existing process with something that has no idea about whatever other commands were in queue with the previous process.