Zeilen behalten, die Werte in einem bestimmten Bereich enthalten

A

ArgonTheGas

Jungspund
Hallo,
ich habe eine Datei mit 4 Spalten, in denen Zahlenwert liegen. Ich möchte gerne alle Zeilen behalten, bei denen der Wert in der dritten Spalte zwischen 663 und 673 liegt. Ich habe mir überlegt, dass es wahrscheinlich am einfachsten ist, wenn ich erst die Werte die kleiner 663 sind, wegschmeiße und dann die, die größter 673 sind.
Mein Datensatz sieht wie folgt aus:
Code:
437.999 302.998 0.00419119 13
489.002 303.003 0.00112058 21
500.998 302.996 -0.00366707 21
393.001 716.996 684.002 22374
399.002 717.001 683.996 22374
393.004 369.001 663.002 21507395.995 369.002 663.005 21507
426.003 369.005 663.004 21759
431.996 369.004 662.997 21716
453.002 369.002 663.003 21805
Ich hatte mir folgendes überlegt:
Code:
cat list_W.txt | awk '{if ($3!< 663) {print $0}}' > list_W_1_aussortiert.txt
Leider kriege ich dann im Terminal immer einen Syntaxfehler ausgegeben...
Code:
awk: cmd. line:1: {if ($3!< 663) {print $0}}
awk: cmd. line:1:         ^ syntax error
Weiß jemand warum das nicht funktioniert?
 
Syntax-Error ist eigentlich sehr eindeutig. Ich bin kein AWK-Experte, aber das "Statement", welches Du verwenden willst (!<) finde ich in keiner Doku...

zudem ist auch in der restlichen Welt ein "nicht kleiner als" meist ein "größer"...
 
Hallo Argon,

Du hast jetzt mehrere Fragen zum Thema Textbearbeitung gestellt.

Ich empfehle Dir die Dokumentation oder ein paar Tutorials zu awk
zu lesen. So schwer ist das nicht.

Grüße,
h.
 
Code:
awk '{if ($3 >= 663 && $3 <= 673) {print $0}}' list_W.txt >list_W_1_aussortiert.txt
 

Ähnliche Themen

Zeilen aus Txt-Datei entfernen, wenn eine Spalte einen bestimmten Wert enthält

Bestimmte Zeilen einer Spalte addieren

skript zum löschen doppelter dateien

Escaping-Problem

Bash Skript: [[: not found Fehler

Zurück
Oben