Empfehlung - Zsh vs FishShell. Scripting, Produktivität und poweruser perse
Habe ich irgendwann versucht, sich für eine zu entscheiden, auf net Vergleiche sind für zsh vs bash und Fisch vs bash. Aber ich konnte nicht finden alle Vergleich für zsh vs Fisch. Ich programmiere in C und C++, abgesehen von Hallo-Welt-Typen, die noch nie getan, alle wichtigen scripting. Aber nun versuchen meine Hände in python und shell-Skripten. Die shell hat mehr Saft im Hinblick auf die Produktivität der ersten und dann die Entwicklung?
Oder am Ende, die Kraft und die Nutzbarkeit von shell kommt, um sein _rc-Dateien. So bin ich gut genug mit der bash?
fish
für den interaktiven Gebrauchzsh
für scripting -- wenn nur zwischen diesen beiden. Ich persönlich glaube, dass die Haltung in gute Gewohnheiten re: POSIX-sh compliance ist wichtig genug, um stick mit der bash oder ksh, wenn ich kümmern sich mehr um die Leistung.- ...das heißt, diese Frage ist explizit gegen die Regeln hier, es gibt einen engen Grund speziell für den empfehle-es-einem-Werkzeug anfordert, und ein weiteres für die Meinung-gezielte Fragen.
- Guter Vergleich der verschiedenen Schalen - hyperpolyglot.org/unix-shells
- Eine Sache: der Versuch zu begreifen, die volle Palette von bash-Funktionalität ist ziemlich einfach. Versuchen, das gleiche zu tun, mit der zsh ist fast unmöglich. Es gibt so viele Möglichkeiten. Es ist wie die C++ - shell-Sprachen. Dies kann eine gute Sache oder eine schlechte Sache. Ich habe bash für einige Jahre, wechselte dann zur zsh für ein Jahr oder so und dann wieder zurück geändert, weil ich fühlte mich wie der Versuch zu verstehen, zsh kam meine Allgemeine Produktivität.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Historisch gab es eine Flamme ware von Arten zwischen den C-shells (CSH und TCSH) und Bash. Die Beschwerde gegen die CSH-Varianten sind, dass Sie schlecht sind, die für scripting.
In den Jahren habe ich ein CLI-junkie, ich habe nie getan standalone-scripts, wobei die Skriptsprache wurde ausgewählt, weil das ist, was mein Panzer war.
Ich geschrieben habe, eine Vielzahl von Skripts, können grob in zwei Kategorien unterteilt werden:
Scripts in Kategorie 1. sind fast immer geschrieben in meiner shell-scripting-Sprache, die (oft als Funktionen, da bin ich mit ZSH und war zuvor mit BASH die beide Funktionen unterstützen).
Scripts in Kategorie 2. geschrieben in, was scheint, wie die meisten effiziente (sowohl die Entwicklungszeit und Laufzeit berücksichtigt). Ich finde mich oft zu schreiben kleine Skripte in Perl, C (kompiliert, natürlich), BASH/ZSH/SH oder was auch immer, was ich will. Ich habe ein kleines Python-scripting (aber nicht viel), und sogar resort zu Java Anlass (kompiliert-ish, wieder).
So was bin ich Geschwätz über? Nicht Basis Sie Wahl von shell auf es ist standalone-scripting-Fähigkeiten. Wählen Sie Ihre shell für es-Dienstprogramm, um Sie als shell. Skript in allem, was Sie sonst wählen. Sie werden wahrscheinlich werden gut genug mit der BASH als shell (obwohl ich wie ZSH ein bisschen mehr, **/* Platzhalter ist schön und ein paar andere kleine Dinge, aber die meisten scripts, die ich geschrieben habe, für die ZSH sind früh gleich zu Ihr BASH-Pendants).
**/*
- moderne (4.x) Versionen der bash unterstützen auch rekursive Einheiten; sieheshopt -s globstar
. Die Sache, die einen großen Unterschied in meiner Ansicht ist die string-splitting-Verhalten auf nicht börsennotierte Erweiterungen; zsh macht es die gesunde Art und Weise, in der Erwägung, dass die bash das auch tut es die Art und Weise, die kompatibel mit POSIX. Es gibt definitiv eine Menge Raum für legitime Differenz in Bezug auf das, was man am Liebsten hier; ich persönlich gehe für die Einhaltung der schlecht durchdachten aber allgegenwärtigen standard.wenn Sie nicht finden können, einen Vergleich zwischen zsh vs Fisch, dann probieren Sie Sie einfach aus. Das ist der einzige Weg, Sie können sagen, was Sie bevorzugen, die sonst niemand kann Ihnen sagen, dass. Außerdem definieren die Bedeutung von Produktivität. Für mich ist es die fülle der Module und die Sprache die internen Funktionen. Wenn Sie begonnen haben, mit Python, go for it. Wie bei den Schalen, Sie können lernen, weniger von ihm (nicht zu sagen, völlig vergessen Sie es), mit Bezug auf vielleicht verstehen Sie Ihre rc-Skripte und andere system-Stoffe usw. Darüber hinaus, Python machen, was die shell macht.
Werden Sie höchst produktiv in einer Umgebung, die Sie bereits kennen. Ich verwendete bash für Jahre und seine feine. Es abgeschlossen fast alles, kann verwendet mit git, mercurial ...
Hatte ich die gleiche Frage gefunden :