So schreiben Sie Skripte mithilfe der AWK -Programmiersprache - Teil 13

So schreiben Sie Skripte mithilfe der AWK -Programmiersprache - Teil 13

Ab dem Beginn der AWK -Serie bis zu Teil 12 haben wir kleine AWK -Befehle und -Programme in der Befehlszeile bzw. in Shell -Skripten geschrieben.

Jedoch, Awk, So wie Shell auch eine interpretierte Sprache ist, können Sie jetzt mit allem, was wir vom Beginn dieser Serie durchlaufen haben, jetzt awk ausführbare Skripte schreiben.

Ähnlich wie wir ein Shell -Skript schreiben, beginnen awk -Skripte mit der Zeile:

#! /Pfad/to/awk/Utility -f 

Zum Beispiel in meinem System die Awk Das Dienstprogramm befindet sich in /usr/bin/awk, Daher würde ich ein awk -Skript wie folgt starten:

#! /usr/bin/awk -f 

Erklären Sie die obige Linie:

  1. #! - bezeichnet als Shebang, Dies gibt einen Dolmetscher für die Anweisungen in einem Skript an
  2. /usr/bin/awk - ist der Dolmetscher
  3. -F - Interpreteroption, verwendet, um eine Programmdatei zu lesen

Lassen Sie uns nun dazu neigen, einige Beispiele für awk -ausführbare Skripte zu betrachten. Wir können mit dem einfachen Skript unten beginnen. Verwenden Sie Ihren bevorzugten Editor, um eine neue Datei wie folgt zu öffnen:

$ vi Skript.awk 

Und fügen Sie den folgenden Code in der Datei ein:

#!/usr/bin/awk -f begin printf "%s \ n", "mein erstes awkoskotisches Skript schreiben!" 

Speichern Sie die Datei und beenden Sie und beenden Sie dann das Skript aus, indem Sie den folgenden Befehl ausgeben:

$ chmod +x Skript.awk 

Danach führen Sie es aus:

$ ./Skript.awk 
Probenausgabe
Schreiben Sie mein erstes awk -ausführbares Skript! 

Ein kritischer Programmierer dort draußen muss fragen. “Wo sind die Kommentare?Ja, Sie können auch Kommentare in Ihr awk -Skript aufnehmen. Das Schreiben von Kommentaren in Ihren Code ist immer eine gute Programmierpraxis.

Es hilft anderen Programmierern, Ihren Code durchzusehen, um zu verstehen, was Sie in jedem Abschnitt eines Skripts oder einer Programmdatei erreichen möchten.

Daher können Sie wie folgt Kommentare in das Skript oben aufnehmen.

#!/usr/bin/awk -f #This ist, wie man einen Kommentar in awk #verwendet #verwendet das spezielle Muster, um einen Satz zu drucken!" 

Als nächstes werden wir uns ein Beispiel ansehen, in dem wir Eingaben aus einer Datei lesen. Wir möchten nach einem Systembenutzer suchen Aaronkilik in der Kontodatei, /etc/passwd, Drucken Sie dann den Benutzernamen, Benutzer AUSWEIS und Benutzer Gid folgendermaßen:

Unten ist der Inhalt unseres Skripts genannt zweite.awk.

#! /usr/bin/awk -f #use starten Sie sepecial charakter, um die integrierte Variable der fs integrierten Variablen zu setzen. "Benutzer -ID:", $ 3, "Benutzer GID:", $ 4 

Speichern Sie die Datei und beenden Sie, machen Sie das Skript ausführbar und führen Sie sie wie unten aus:

$ chmod +x Sekunde.awk $ ./zweite.awk /etc /passwd 
Probenausgabe
Benutzername: Aaronkilik Benutzer -ID: 1000 Benutzer GID: 1000 

Im letzten Beispiel werden wir verwenden Tun Sie während der Erklärung Zahlen aus ausdrucken von 0-10:

Unten ist der Inhalt unseres Skripts genannt Tun.awk.

#! /usr/bin/awk -f #printing von 0-10 Verwenden Sie ein Do while -Anweisung #do, während Anweisung beginnt #initialize a counter x = 0 do print x; x+= 1;  während (x<=10)  

Machen Sie nach dem Speichern der Datei das Skript ausführbar wie zuvor. Danach führen Sie es aus:

$ chmod +x tun.awk $ ./Tun.awk 
Probenausgabe
0 1 2 3 4 5 6 7 8 9 10 

Zusammenfassung

Wir sind am Ende dieser interessanten AWK -Serie gekommen. Ich hoffe, Sie haben viel aus allen 13 Teilen als Einführung in die AWK -Programmiersprache gelernt.

Wie ich von Anfang an erwähnt habe, ist awk eine vollständige Textverarbeitungssprache. Aus diesem Grund können Sie weitere andere Aspekte der AWK-Programmiersprache wie Umgebungsvariablen, Arrays, Funktionen (integriert und benutzerdefiniert) und darüber hinaus lernen.

Es gibt noch zusätzliche Teile der awk -Programmierung zum Lernen und Meister. Im Folgenden habe ich einige Links zu wichtigen Online -Ressourcen bereitgestellt, mit denen Sie Ihre AWK -Programmierkenntnisse erweitern können. Diese sind nicht unbedingt alles, was Sie benötigen. Sie können auch nachsehen Aus nützlichen awk -Programmierbüchern.

Referenzlinks: Die GNU AWK -Benutzerhandbuch und die awk -Sprachprogrammierung

Verwenden Sie für Gedanken, die Sie teilen oder Fragen teilen möchten, das folgende Kommentarformular. Denken Sie daran, immer in Verbindung zu bleiben mit Tecmint Für mehr aufregende Serien.