Gawk: Unterschied zwischen den Versionen
Erscheinungsbild
Keine Bearbeitungszusammenfassung |
K Textersetzung - „http://“ durch „https://“ |
||
(24 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{DISPLAYTITLE:gawk}} | {{DISPLAYTITLE:gawk}} | ||
'''awk''' | '''awk''' - Programmiersprache zur Bearbeitung und Auswertung von Textdateien | ||
== Beschreibung == | == Beschreibung == | ||
Weiterentwicklung und Ergänzung von [[sed]] | |||
* if .. then .. else | * if .. then .. else | ||
* Schleifen | * Schleifen | ||
Zeile 12: | Zeile 9: | ||
; Minimalanwendung | ; Minimalanwendung | ||
Shell-Skripte | |||
* etwa als Filter, um Dateinamen zusammenzusetzen | |||
;Ausführliche Programmen | ; Ausführliche Programmen | ||
* | Textdateien | ||
* | * bearbeiten | ||
* umformen | |||
* auswerten | |||
; | Dazu stehen neben den üblichen String-Funktionen aber auch mathematische Grund-Funktionen zur Verfügung. | ||
; Name | |||
* Anfangsbuchstaben der Nachnamen ihrer drei Autoren | * Anfangsbuchstaben der Nachnamen ihrer drei Autoren | ||
* Alfred V. Aho, Peter J. Weinberger und Brian W. Kernighan zusammengesetzt. | * Alfred V. Aho, Peter J. Weinberger und Brian W. Kernighan zusammengesetzt. | ||
Zeile 32: | Zeile 33: | ||
* Wesentliche Bestandteile fanden im später definierten POSIX-Standard Einzug. | * Wesentliche Bestandteile fanden im später definierten POSIX-Standard Einzug. | ||
* Der wesentliche Unterschied von Awk zu anderen Programmiersprachen wie den Skriptsprachen der UNIX Shells, C oder Tcl/Tk besteht in der ''datenorientierten Arbeitsweise'', während die typischen Vertreter prozeduraler Programmiersprachen ''funktionsorientiert'' wirken. | * Der wesentliche Unterschied von Awk zu anderen Programmiersprachen wie den Skriptsprachen der UNIX Shells, C oder Tcl/Tk besteht in der ''datenorientierten Arbeitsweise'', während die typischen Vertreter prozeduraler Programmiersprachen ''funktionsorientiert'' wirken. | ||
* Ein awk-Programm wirkt implizit wie eine endlose Schleife, die fortwährend durchlaufen wird, bis keine Daten mehr in der Eingabe stehen oder das Programm | * Ein awk-Programm wirkt implizit wie eine endlose Schleife, die fortwährend durchlaufen wird, bis keine Daten mehr in der Eingabe stehen oder das Programm ''bewusst'' verlassen wird, d. h. der Steuerfluss ist maßgeblich durch die Daten gegeben. | ||
* In den meisten anderen Programmiersprachen wird das Hauptprogramm aber einmalig initiiert und Funktionen beeinflussen den Fortschritt der Berechnung. | * In den meisten anderen Programmiersprachen wird das Hauptprogramm aber einmalig initiiert und Funktionen beeinflussen den Fortschritt der Berechnung. | ||
* Awk ähnelt somit eher dem Streameditor (sed); er vermag allerdings bedeutend mehr als die | * Awk ähnelt somit eher dem Streameditor (sed); er vermag allerdings bedeutend mehr als die ''bloße'' Modifikation von Textdateien, denn Awk kennt Variablen, Vergleiche, Funktionen, Schleifen u.a.m. und ermöglicht eine Interaktion mit dem System. | ||
* Da in Linux-Installationen nahezu ausschließlich die GNU-Implementierung des Werkzeugs vorzufinden ist, werden wir nachfolgend immer die Bezeichnung | * Da in Linux-Installationen nahezu ausschließlich die GNU-Implementierung des Werkzeugs vorzufinden ist, werden wir nachfolgend immer die Bezeichnung ''awk'' verwenden und meinen damit eigentlich ''gawk''. | ||
* Zeigen die Beispiele auf Ihrem System abweichende oder fehlerhafte Reaktionen, überprüfen Sie, ob | * Zeigen die Beispiele auf Ihrem System abweichende oder fehlerhafte Reaktionen, überprüfen Sie, ob ''awk'' in ihrem System ein Link auf ''gawk'' ist. | ||
== Installation == | == Installation == | ||
== | == Aufruf == | ||
=== Optionen === | === Optionen === | ||
=== | === Argumente === | ||
=== | === Umgebung === | ||
=== | === Rückgabewert === | ||
== Anwendungen == | == Anwendungen == | ||
=== | === Problembehebung === | ||
== Konfiguration == | == Konfiguration == | ||
=== Dateien === | === Dateien === | ||
Zeile 52: | Zeile 53: | ||
== Siehe auch == | == Siehe auch == | ||
=== Dokumentation === | === Dokumentation === | ||
# | # https://www.gnu.org/software/gawk/manual/ | ||
==== RFC ==== | ==== RFC ==== | ||
==== Man- | ==== Man-Page ==== | ||
==== Info-Pages ==== | ==== Info-Pages ==== | ||
=== Links === | === Links === | ||
==== Projekt ==== | ==== Projekt ==== | ||
==== Weblinks ==== | ==== Weblinks ==== | ||
# | # https://de.wikibooks.org/wiki/Awk | ||
[[Kategorie:gawk]] | [[Kategorie:gawk]] | ||
{{DEFAULTSORT:gawk}} | {{DEFAULTSORT:gawk}} |
Aktuelle Version vom 7. April 2025, 14:35 Uhr
awk - Programmiersprache zur Bearbeitung und Auswertung von Textdateien
Beschreibung
Weiterentwicklung und Ergänzung von sed
- if .. then .. else
- Schleifen
- C-Formate
- Minimalanwendung
Shell-Skripte
- etwa als Filter, um Dateinamen zusammenzusetzen
- Ausführliche Programmen
Textdateien
- bearbeiten
- umformen
- auswerten
Dazu stehen neben den üblichen String-Funktionen aber auch mathematische Grund-Funktionen zur Verfügung.
- Name
- Anfangsbuchstaben der Nachnamen ihrer drei Autoren
- Alfred V. Aho, Peter J. Weinberger und Brian W. Kernighan zusammengesetzt.
- Der freie Awk-Abkömmling der GNU-Gemeinde gawk zeigt sich zu POSIX konform und wird in den folgenden Abschnitten behandelt.
- AWK ergibt sich auf den Initialen seiner Erfinder
Alfred V. Aho, Peter J. Weinberger, Brian Kernighan
- und erweiterte erstmals 1978 den Werkzeugfundus von Unix Version 7.
- Jener Kernighan prägte übrigens gemeinsam mit Dennies Ritchie maßgeblich die Entstehung der Programmiersprache C
- wen wundern da noch die Analogien beider Sprachen?
- 1987 wartete Awk mit einer komplett überarbeiteten Fassung auf.
- Wesentliche Bestandteile fanden im später definierten POSIX-Standard Einzug.
- Der wesentliche Unterschied von Awk zu anderen Programmiersprachen wie den Skriptsprachen der UNIX Shells, C oder Tcl/Tk besteht in der datenorientierten Arbeitsweise, während die typischen Vertreter prozeduraler Programmiersprachen funktionsorientiert wirken.
- Ein awk-Programm wirkt implizit wie eine endlose Schleife, die fortwährend durchlaufen wird, bis keine Daten mehr in der Eingabe stehen oder das Programm bewusst verlassen wird, d. h. der Steuerfluss ist maßgeblich durch die Daten gegeben.
- In den meisten anderen Programmiersprachen wird das Hauptprogramm aber einmalig initiiert und Funktionen beeinflussen den Fortschritt der Berechnung.
- Awk ähnelt somit eher dem Streameditor (sed); er vermag allerdings bedeutend mehr als die bloße Modifikation von Textdateien, denn Awk kennt Variablen, Vergleiche, Funktionen, Schleifen u.a.m. und ermöglicht eine Interaktion mit dem System.
- Da in Linux-Installationen nahezu ausschließlich die GNU-Implementierung des Werkzeugs vorzufinden ist, werden wir nachfolgend immer die Bezeichnung awk verwenden und meinen damit eigentlich gawk.
- Zeigen die Beispiele auf Ihrem System abweichende oder fehlerhafte Reaktionen, überprüfen Sie, ob awk in ihrem System ein Link auf gawk ist.
Installation
Aufruf
Optionen
Argumente
Umgebung
Rückgabewert
Anwendungen
Problembehebung
Konfiguration
Dateien
Sicherheit
Siehe auch
Dokumentation
RFC
Man-Page
Info-Pages
Links
Projekt
Weblinks