Tooltime: zsh #1
Allgemeines zur Z-Shell
Für alle die durch meinen ersten Artikel mehr wissen wollen!
Warum also die zsh?
- Man muss sich nicht auf die Shell einstellen, sondern kann
die zsh mit über 150 Optionen nach seinem Geschmack abpassen. - All die Features der zsh machen sie nicht zwangsläufig übberladen,
da die Shell vieles in Module gepackt hat, die nur bei Bedarf
geladen werden können. - Module existieren zB für mathematische Funktionen oder sogar
einen kompletten FTP client. - Der Kommandozeilen Editor Zle
- vollprogrammierbare Completion
- absolut irres Globbing (lies: "wie mache ich Dateinamen")
- zcompile um aus Funktionen Bytecode zumachen
- vared
- themebare Prompts und RPROMPT
Für Umsteiger:
- die allermeisten Befehle aus bash, sh und ksh werden ohne
weiteres in der zsh funktionieren - weiterhin gibt es Emulationsmodi für csh, bash und ksh
Will man wissen wo sich die zsh anders als seine alte Shell verhält,
so kann man dieses hier nachschauen.
Natürlich ist diese kleine Liste extrem unvollständig. Es sollte auch
nur eine kleine Einleitung sein.
Für mich wären die wichtigsten Features die mich zu einem Wechsel
bringen würden die Completion und das Globbing.
Die anderen Features nutzt man nach und nach von allein....
Mit ein wenig Anleitung im Anfang vielleicht :)
Weiterhin hat die zsh eine riesige Dokumentation:
% man -k zsh
rzsh (1) - the Z shell
zsh (1) - the Z shell
zsh4 (1) - the Z shell
zshall (1) - the Z shell meta-man page
zshbuiltins (1) - zsh built-in commands
zshcompctl (1) - zsh programmable completion
zshcompsys (1) - zsh completion system
zshcompwid (1) - zsh completion widgets
zshcontrib (1) - user contributions to zsh
zshexpn (1) - zsh expansion and substitution
zshmisc (1) - everything and then some
zshmodules (1) - zsh loadable modules
zshoptions (1) - zsh options
zshparam (1) - zsh parameters
zshtcpsys (1) - zsh tcp system
zshzftpsys (1) - zftp function front-end
zshzle (1) - zsh command line editor
% man zshall | wc -l
Reformatting zshall(1), please wait...
19798
Nicht schlecht, oder?
Zum Einstieg in die zsh einmal ein paar Vergleiche mit der bash,
abgekupfert von Christian Schneider:
Bash: gzip -cd foo.gz && less foo | Zsh: less <(gzip -cd foo.gz) |
Bash: cat foo fubar | sort | Zsh: sort <f{oo,ubar} |
Bash: find . -type f -exec chmod 700 {} \\; | Zsh: chmod 700 **/*(.) |
Bash: ls -l `which foobar` | Zsh: ls -l =foobar |
Das dritte Beispiel zeigt das zsh's Globbing find(1) fast obsolete macht ;-)
(Comments: 0)