-
AWK: Abkürzung, die aus den Anfangsbuchstaben der Nachnamen der drei
"Väter" der Sprache AWK besteht: Al Aho, Peter Weinberger, Brian
Kernighan
-
allgemeingültige Programmier- bzw. Skriptsprache sowie gleichnamiges Werkzeug,
das vor allem eine effektive, flexible und elegante Analyse und Manipulation
von Daten im Text-Format gestattet
-
AWK-Programme werden in der Regel bei der Ausführung automatisch zunächst
komplett in einen Zwischencode kompiliert, der dann interpretativ abgearbeitet
wird
-
anders als z.B. bei Bash oder Python ist es in einem AWK-Programm nicht
möglich, neue AWK-Anweisungen als Strings zu generieren und diese vom aktuellen
Interpreter ausführen zu lassen
-
man kann aber generierte AWK-Anweisungen via File oder Pipe an eine
andere Interpreter-Instanz übergeben und so von dieser ausführen lassen:
#include(other_awk.awk)
-
AWK ist ein schon lange existierendes UNIX-Standard-Werkzeug, das im Laufe der
Entwicklung verschiedene Erweiterungen und Verbesserungen erfuhr und heute
immer noch aktiv genutzt wird
-
es ist älter als z.B. die heute vielfach bekannteren Skriptsprachen Perl,
Python, PHP, Tcl, ...
-
speziell kleinere AWK-Programme lassen sich gut in Shell-Skripte einbetten, was
häufig genutzt wird
-
AWK steht für viele Betriebsysteme (u.a. verschiedene Unix-Versionen, Windows
und DOS) zur Verfügung und ist somit prinzipiell portabel
-
es gibt eine Reihe unterschiedlicher AWK-Implementierungen mit differierendem
Leistungsumfang
-
besonders leistungsfähige und aus Sicht des Autors empfehlenswerte Implementierung:
Gawk (GNU awk)
-
Gawk ist der Standard bei Linux-Systemen und sollte nach Möglichkeit generell
für praktische AWK-Projekte zum Einsatz kommen, da es viele nützliche
Erweiterungen enthält
-
die Code-Beispiele dieser Seite wurden unter Gawk getestet und nutzen teilweise
spezifische Gawk-Erweiterungen