Eine grundlegende Frage zu UND logischen Operator. Ich versuche, einige Felder in meiner Datendatei niveles.csv basierend auf den Werten der Spalten 1 und 2 zu extrahieren. Ich möchte einen awk-Satz schreiben, der sagt: "wenn field1 = date und field2 = area dann drucke Felder 3 bis 5" .
Meine Datendatei sieht wie
aus %Vor%awk-Satz in einem Bash-Skript ist
%Vor%Aber das gibt nur Felder für die drei Fälle, in denen die Bereichsnummer eine 8 hat (8,18 und 28), während ich nur Daten für Bereich 8 haben möchte
%Vor%Vielen Dank im Voraus für Ihre Aufmerksamkeit, sicher, es ist eine einfache Frage für erfahrene Benutzer.
Da diese Frage aufgrund ihres Titels viel Aufmerksamkeit erhält, möchte ich eine allgemeinere Antwort veröffentlichen, die beschreibt, wie der Operator AND
in awk
verwendet wird.
Angenommen, Sie haben eine Datei myfile
:
Wenn Sie nach einer Möglichkeit suchen, mehrere Überprüfungen mit dem Operator AND
durchzuführen, müssen Sie &&
wie folgt verwenden:
Was zurückkehren würde:
%Vor%Im Allgemeinen können Sie so viele Bedingungen verwenden, wie Sie möchten, unter Berücksichtigung, dass
%Vor%Sie können also mehrere logische Ausdrücke kombinieren, wie zum Beispiel:
%Vor%
Tags und Links awk