Переключение с zsh на bash на OSX и обратно?
8 ответов
вы можете просто использовать exec
чтобы заменить текущую оболочку новой оболочкой:
переключатель bash
:
exec bash
переключатель zsh
:
exec zsh
Это не повлияет на новые окна терминалов или что-то еще, но это удобно.
вы можете попробовать chsh -s /bin/bash
чтобы установить bash по умолчанию,
или chsh -s /bin/zsh
для установки zsh по умолчанию.
я переключаюсь между zsh и bash несколько часто. Некоторое время мне приходилось использовать источник моего bash_profile для каждого коммутатора. Затем я узнал, что вы можете (обычно) сделать
exec bash --login
или просто
exec bash -l
zsh имеет встроенную команду emulate
который может эмулировать различные оболочки, устанавливая соответствующие параметры, хотя csh никогда не будет полностью эмулироваться.
emulate bash
perform commands
emulate -R zsh
флаг-R восстанавливает все параметры до значений по умолчанию для этой оболочки.
посмотреть: zsh руководство
вы должны быть в состоянии просто типа bash
в терминал для переключения на bash, а затем введите zsh
для переключения на zsh. По крайней мере, для меня.
ничего из этого не работает для меня. Помощь.
~ $ echo $SHELL
/bin/zsh
~ $ exec bash
~ $ echo $SHELL
/bin/zsh
~ $ chsh -s /bin/bash
Changing shell for Mac.
Password for Mac:
~ $ echo $SHELL
/bin/zsh
~ $ exec bash --login
~ $ echo $SHELL
/bin/zsh
~ $ bash
~ $ echo $SHELL
/bin/zsh
~ $ bye
bash: bye: command not found
~ $ exit
exit
~ $ echo $SHELL
/bin/zsh