Skip to content

Nicht machen ...

Ich habe neulich den Ausspruch
Benutze nicht awk, wenn Du sed benutzen kannst. Benutze nicht sed, wenn Du grep benutzen kannst. Benutze nicht grep, wenn Du cut benutzen kannst.
gehört und weiss nicht so recht, was ich davon halten soll.

Prinzipiell halte ich es für eine sehr gute Idee, wenn möglichst viele Tools den eigenen Werkzeugkasten füllen. Und meine Meinung ist, dass man das Tool der Aufgabe entsprechend aussuchen sollte. Ich halte auch gar nichts von "Pipe-Schlangen" so wie "grep suchbegriff datei | grep -v 'anderer suchbegriff' | cut -f 1 | sed 's/u/x/", wenn man das alles mit einem einzigen Werkzeug erledigen kann.

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Jens Link am :

*Man kann mit langen PIPE-Ketten prima Leute verwirren. Manchmal kann man Leute auch damit von *NIX überzeugen. BTDT.

Dirk Deimeke am :

*Das ist kein Grund. "If you can not make it good, make it good looking." hat uns schon ein wenig ruhmreiches, dafür aber kommerziell erfolgreiches Betriebssystem beschert.

Neben den "useless use of cat"-Awards wissen die meisten nicht, dass man die Umleitungen irgendwo im Kommando verbauen kann ... das reicht schon, um langjährige Shell-User ins Grübeln zu bringen.

Charly Kuehnast am :

*Ich halte ja eher wenig von Dogmen wie "xyz macht man nicht".

Im Zweifelsfall gewinnt nicht der eleganteste Code, sondern der, der sich am einfachsten warten und pflegen lässt... auch nach einem Jahr, auch von einem neu hinzugekommenen Kollegen.

Dass es nicht einfach ist, kilometerlange "Pipe-Schlangen" im Kopf zu parsen, weiß ich aus leidvoller Erfahrung. Leider gilt das oft auch für awk-Code und komplexe reguläre Ausdrücke.

Was immer hilft, sind ausführliche Kommentare im Code.

Dirk Deimeke am :

*Da gebe ich Dir halb recht.

Selbstverständlich muss das Endergebnis wartbarer Code oder/und gute Dokumentation zum Code sein.

Aber bei systembelastenden Scripts lohnt es sich schon darüber nachzudenken, wie man etwas möglichst Ressourcen schonend zu Ende bringt. Und in diesem Fall kann es sinnvoll sein, beispielsweise eine Reihe von greps in einen einzelnen awk-Befehl (oder ein awk-Skript) zu bauen, auch wenn es dadurch für weniger erfahrene Kollegen schwerer nachzuvollziehen ist.

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen