Ich weiß, dass ich "Shells öffnen mit" in den Terminal-Einstellungen festlegen kann, bin aber gespannt, ob es eine systemweite Möglichkeit gibt, dies festzulegen (ähnlich wie beim Aktualisieren von / etc / passwd in einigen Unixen).
21
Beachten Sie, dass Sie nur zu einer in aufgeführten Shell wechseln dürfen
/etc/shells
. Dies ist normalerweise in Ordnung, aber es bedeutet, dass Sie, wenn Sie Bash 4 installieren möchten (von Homebrew, MacPorts oder beim Kompilieren Ihrer eigenen), eine Zeile hinzufügen müssen/etc/shells
. (Ich bin vor ein paar Wochen darauf gestoßen und dachte, es könnte anderen helfen, es zu wissen ...)Bearbeiten : Tim Smith weist darauf hin, dass Sie die
/etc/shells
Einschränkung umgehen können, wenn Siechsh
als Root über ausgeführt werdensudo
. ZBsudo chsh -s /usr/local/bin/my_shell $USER
wird funktionieren, auch wennmy_shell
nicht in aufgeführt ist/etc/shells
. Ich bevorzuge die Bearbeitung/etc/shells
, aber am Ende ist es eine dersudo
beiden Möglichkeiten, da Sie nicht/etc/shells
als regulärer Benutzer bearbeiten können . Also vielleicht sechs von einem, ein halbes Dutzend von dem anderen.quelle
/etc/shells
wenn Sie nicht müssen? Aus Gründen der Vernunft halte ich die Systemdateien lieber gleich./etc/shells
ist die Datei auf dem System, die erkannte Shells definiert. Ich ändere diese Datei, weil ich der Liste der erkannten Shells eine Shell hinzufügen möchte. Scheint mir ziemlich vernünftig.chsh: bash: non-standard shell
chsh
alleine verwenden, wenn Sie versuchen, eine Shell zu verwenden, die nicht in aufgeführt ist/etc/shells
./etc/shells
mir nicht komisch vor.So verwenden Sie die Mac OS X-Benutzeroberfläche:
Beachten Sie, dass Sie an diesem Ort Ihr Basisverzeichnis, Ihre UUID, Ihre Benutzer-ID, Ihre Gruppen-ID und Ihren Kurznamen ändern können, wenn Sie mit dem Terminal nicht zufrieden sind. Es gibt eine ähnliche Frage hier befindet sich auch.
quelle
Bei Verwendung der obigen Antworten wurde eine Fehlermeldung angezeigt:
Um dies zu umgehen:
whoami
In einer Subshell soll die Shell für Ihren Benutzer geändert werden, nicht der Root.Eine weitere Sache, wenn Sie Homebrew verwenden. Wenn Sie Befehle als root ausführen (mit
sudo
), zeigt zsh auf / bin / zsh, was im Lieferumfang von OSX enthalten ist und möglicherweise veraltet ist. Verwenden Sie Folgendes, um die aktuelle Version zu verwenden, die über Homebrew installiert wurde:quelle