Linux: Bash vs. Zsh, -ein Kurzvergleich-
Nach langer Zeit habe ich mich entschlossen, doch die Z-Shell einmal zu probieren.
Lange habe ich die bash verwendet, weil sie bei jeder Linux-Distribution installiert ist.
Der Umgang
Das Ausehen des Promptes mag ja viele als hervorstechendes Merkmal sehen, aber wie ist es mit der Funktionalität? Hier besticht die zsh mit ihrer Kommando- und Parametererweitung per Tabtaste natürlich. Ich habe mich schnell an diesen Komfort gewöhnt. Da nur mein Laptop die zsh bei meinem Useraccount verwendet, merke ich bei jedem Remotezugriff auf einen anderen Server bei mir, wie hölzern die bash im Umgang ist.
Scripte
Eine Frage die sich mir stellte, wie ist die Kompabilität beim Scripten? Alle meine Scripte habe ich mit der bash geschrieben. Werden sie ohne Probleme weiterlaufen? Besonders die Teile davon, die in der .zshrc inkludiert werden? Ja, mit einer Einschränkung, laufen bei mir alle Scripte der bash auch mit der zsh als Interpreter. In der kurzen Zeit werde ich natürlich nicht alles getestet haben. Generell kann man sagen, die zsh tolleriert weniger Fehler im Script als die bash.
In einem Script habe ich innerhalb einer if-Klause den Stringvergleich mit “==” stehen gehabt. Meine bash hat das tolleriert und richtig ausgeführt. Es darf aber nur ein “=” an dieser Stelle stehen. Die zsh quittiert dies mit einer Fehlermeldung.
Fazit
Etwas unschön beim Wechsel zur zsh ist, dass die aufgebaute History verloren geht. Die zsh verwendet einen Zeitstempel in ihrer History.
Nun braucht es ja immer etwas Zeit, um sich an etwas Neues zu gewöhnen... Ich werde es eine Zeit lang probieren. Auf meinen Servern, speziell der Root-Umgebung werde ich bei der bash bleiben. Vorläufig...