Erste Schritte mit Gawk
Wenn Sie die neuesten Linux -Versionen verwenden, sollte Gawk standardmäßig installiert werden. Sie können überprüfen, indem Sie die Version überprüfen.
Es gibt verschiedene Möglichkeiten, Gawk zu verwenden. Die gemeinsamen Funktionen sind die folgenden:
Die grundlegende Syntax für Gawk ist:
$ gawk [posix / gnu stile Optionen] -F programm_file [ -] Datei
$ gawk [posix / gnu style -Optionen] [ -] Programmdatei…
Um Gawk zu verwenden, verwenden Sie entweder die -F Option zum Angeben einer Skriptdatei oder zur direkten Angabe des Skripts in der Befehlszeile.
Bei der Verwendung von Gawk müssen drei wichtige Optionen beachten:
1. -f Datei, -file = Datei: Wird verwendet, wenn Sie Gawk verwenden und Befehle aus einer Datei lesen möchten. Die Datei ist das Skript.
2. -v var = val, -Sign = var = val: Wird verwendet, wenn Sie vor der Ausführung eines Skripts einer Variablen einen Wert zuweisen müssen.
3. -F fs, -Field -Separator = fs: Der Wert der vordefinierten Variablen FS wird als Trennzeichen für das Eingabefeld verwendet.
Integrierte Variablen
Gawk bietet integrierte Variablen wie:
Fs: Wird beim Teilen von Dateien verwendet und enthält das Feldabscheiderzeichen.
Rs: Enthält das Stromscheider -Separator.
Ofs: Enthält den Ausgangsfeldabscheider, der die Felder trennt, die awk druckt.
NF: Die Anzahl der Felder für den Eingangsdatensatz wird in der NF gespeichert.
Ors: Enthält den Ausgangsfeldabscheider, der die von awk gedruckten Ausgangsleitungen trennt.
NR: Enthält die Gesamtzahl der Eingangsleitungen.
Im vorherigen Beispiel verwenden wir * als Trennzeichen für die Eingabezeilen in der Datei.
Beispiel Verwendung von Gawk
1. -F
Verwenden Sie den folgenden Befehl zum Sortieren einer Textdatei und zum Drucken der ersten drei mit Dickdarm getrennten Felder. Beachten Sie, dass wir die verwenden Passwd Als unsere Datei hier:
$ gawk -f: 'print $ 1; drucken $ 2; Drucken Sie $ 3 ' /etc /passwd
Hier ist unser Separator ein voller Dickdarm. Da wir die ersten drei Felder wollen, geben Sie diese wie im vorherigen Beispiel angegeben an. Sie können es optimieren und einen anderen Separator und eine andere Anzahl von Feldern verwenden.
2. -F
Verwenden Sie um die AWK -Programmquelle aus einer Datei, verwenden Sie das Flag -f -Flag, gefolgt von der Datei:
$ gawk -f: -f Datei1.txt /etc /passwd
3. Drucken des Inhalts einer Datei
Das Verwenden von Gawk in einer Datei druckt alle Datenzeilen in der Datei aus.
4. Arbeiten mit Mustern
Sie können Gawk auch verwenden und nur die Zeilen drucken, die einem bestimmten Muster entsprechen. Zum Beispiel, um eine Zeile mit einem bestimmten Wort zu drucken, ist das Wort in unserem Fall das Wort Kim, Der Befehl wäre:
$ gawk '/ kim/ print' Dateiname
Hier kann das Muster auch ein Charakter sein. Um beispielsweise alle Zeilen, die einen Dickdarm enthalten, zu drucken, wäre der Befehl wie im folgenden Bild:
Sie können auch die spezifischen Zeilen angeben, die gedruckt werden sollen. Zum Beispiel ist die Syntax, um die Zeilen mit spezifischen Zeichen wie mehr als 6 zu drucken,: die Syntax ist:
$ gawk 'Länge ($ 0)> 6' Dateiname
5. Leitungen in Felder aufteilen
Gawk druckt standardmäßig jedes Feld beim Drucken von Zeilen in einer Datei aus. Sie können jedoch angeben, welches Feld Sie drucken sollen. Das erste Feld wird in der gespeichert $ 1 und die ganze Linie wird als dargestellt als $ 0. Standardmäßig wird die gesamte Zeile gedruckt, sofern Sie nicht angeben.
Zum Beispiel wäre der Befehl, um die Zeilen zu trennen und nur das zweite Feld jeder Zeile zu drucken:
$ gawk 'print $ 2' Dateiname
Um die Zeilennummern hinzuzufügen, fügen Sie die hinzu Nr Variable.
Der neue Befehl wäre:
$ gawk 'print nr, $ 2' Dateiname
6. Holen Sie sich die Anzahl der Zeilen
Möglicherweise müssen Sie die Gesamtzahl der Zeilen für große Dateien erhalten, und dies können mit der folgenden Syntax erreichen:
$ gawk 'end drucken nr' Dateiname
Abschluss
Zu wissen, wie man Gawk in Linux verwendet. Sie können die verschiedenen Muster verwenden, um die Datenlinien zu extrahieren und zu manipulieren. Hoffentlich bieten die in diesem Artikel behandelten Beispiele einen Vorsprung und öffnen Sie Ihre Augen, wenn Sie Gawk für verschiedene Aktivitäten verwenden.