2012-04-26 14 views
92

Also ich lerne in Rails zu entwickeln, und habe die Kraft von zsh entdeckt. Für einige meiner anderen Aufgaben möchte ich normalen Bash verwenden. Obwohl sie die gleichen sind, fühle ich mich in einigen Situationen einfach wohl mit dem Lay-out von bash. Wie wechsle ich hin und her oder schalte zsh ein und aus? Vielen Dank!Wechsel von zsh zu bash auf OSX und wieder zurück?

Antwort

195

können Sie nur exec benutzen, um Ihre aktuelle Shell mit einer neuen Schale zu ersetzen:

Switch to bash:

exec bash 

Switch to zsh:

exec zsh 

Dies wirkt sich nicht auf neue Terminalfenster oder so, aber es ist praktisch.

+1

Dank ! So einfach! – vpoola88

+1

Gern geschehen! Wenn Sie mit dieser Antwort zufrieden sind, nehmen Sie sich bitte einen Moment Zeit, um sie als akzeptiert zu markieren, indem Sie das Häkchen links neben der Antwort markieren. Vielen Dank! – larsks

+0

Oder rufen Sie einfach zsh auf, und wenn Sie fertig sind, beenden Sie den Vorgang, um zur bash zurückzukehren. Es scheint unnötig und unerwünscht zu sein. –

64

können Sie chsh -s /bin/bash versuchen, die Bash als Standard, oder chsh -s /bin/zsh, um die zsh als Standard festlegen.

26

Ich wechsele ziemlich oft zwischen zsh und bash. Für eine Weile musste ich bei jedem Wechsel mein Bash_Profile beziehen. Dann fand ich heraus, Sie können (in der Regel) tun

exec bash --login 

oder nur

exec bash -l 
+0

Danke Phill, ich installierte Thoughtbot/Laptop und es verwirrte alle meine Konfigurationen. Dein Tipp hilft mir, meine Bash-Umgebung zurückzubekommen. –

+0

arbeitete für mich danke – skkrish

+0

Wäre nützlich, dass Sie geschrieben haben, was ist "--login" für? – Ewoks

2

zsh hat einen eingebauten Befehl emulate, die verschiedene Shells, indem Sie die entsprechenden Optionen emulieren kann, obwohl csh wird nie vollständig emuliert werden .

Die Option -R setzt alle Optionen auf ihre Standardwerte für diese Shell zurück.

See: zsh manual

0

Für Bash, versuchen

chsh -s $(which bash) 

Für zsh, versuchen

chsh -s $(which zsh) 
0

Sie einfach zurück zu bash wechseln können mit dem Befehl "bye"