awk ist eine Programmiersprache zur Bearbeitung und Auswertung einfacher Textdaten, insbesondere CSV-Dateien. Der zugehörige Interpreter war eines der ersten Werkzeuge, die in der Version 3 von UNIX erschienen; sie wird auch heute noch vielfach zusammen mit sed in Shell-Skripten eingesetzt, um Daten zu bearbeiten, umzuformen oder auszuwerten. Die Bezeichnung “awk” ist aus den Anfangsbuchstaben der Nachnamen ihrer drei Autoren Alfred V. Aho, Peter J. Weinberger und Brian W. Kernighan zusammengesetzt.

Eine Version von awk ist heute in jedem Unix-System zu finden. Es ist aber auch für fast alle anderen Betriebssysteme verfügbar. Die Free Software Foundation stellt unter dem Namen “gawk” eine freie Version zur Verfügung.

awk arbeitet fast ausschließlich mit dem Datentyp Zeichenkette (engl. String). Daneben sind assoziative Arrays (d. h. mit Zeichenketten indizierte Arrays, auch Hashs genannt) und reguläre Ausdrücke grundlegende Bestandteile der Sprache.

Quelle: http://de.wikipedia.org/wiki/Awk

sed steht für Stream EDitor und ist ein bekanntes Unix-Werkzeug, mit dem Textdateien geändert werden können. sed ist wie jedes Unix-Werkzeug ein Programm, das die automatisierte Manipulation per Kommandozeile ermöglicht–im Gegensatz etwa zu einem interaktiven Texteditor wie etwa dem vi.

Die sed-Befehle orientieren sich teilweise an denen des zeilenorientierten Texteditors ed. Sed liest eine Eingabedatei Zeile für Zeile, und gibt jede Zeile entsprechend vorgegebener Regeln verändert wieder aus.

Quelle: http://de.wikipedia.org/wiki/Sed_(Unix)

Zwei Werkzeuge die nach meiner Erfahrung von vielen unterschätzt werden – vorallem da eine gewisses Maß an lernaufwand und Einarbeitungszeit vorausgesetzt wird.

Ich verwende awk-Einzeiler bzw. einfache awk-Skripte häufiger um ABAP-Datenextrakte (aus SAP R/3) flexibel aufzubereiten, so daß eine Datei für verschiedene Anwendungsfälle und Zielsystem / Reportingtools genutzt werden kann.
Sed kommt immer dann zum Einsatz wenn größere Datenbestände “manipuliert”, z.B. Zeichenketten ersetzt werden müssen.

Ich nutze sowohl awk als auch sed unter Windows und GNU/Linux.

Hier eine kleine Zusammenfassung von Tutorials, Cheatsheets, Reference Cards und Hintergrundinformationen.

bearbeitet 2009/10/27:

Noch ein paar sehr hilfreiche Links zum Thema Awk.

Update 2010/07/17:

verlinkt mich / drucken:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Blogosphere News
  • FSDaily
  • HackerNews
  • Identi.ca
  • LinkArena
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • Reddit
  • Slashdot
  • Technorati
  • Twitter
  • Yigg
  • Blogplay
  • Diggita
  • eKudos
  • email
  • FriendFeed
  • Linkter
  • MySpace
  • PDF
  • Posterous
  • RSS
  • StumbleUpon
  • Tumblr
  • Yahoo! Bookmarks