hallo @all,
wie kann ich am elegantesten zeilen aus einem text-file löschen, die eine bestimmte zeichenkette enthalten?
bsp.: lösche alle zeilen aus simdat.durchlauf1, die zeichenkette "not valid" enthalten
danke vorab & gruß, kai
am Fri, dem 13.07.2007, um 12:46:39 +0200 mailte K-M.P folgendes:
hallo @all,
wie kann ich am elegantesten zeilen aus einem text-file löschen, die eine bestimmte zeichenkette enthalten?
bsp.: lösche alle zeilen aus simdat.durchlauf1, die zeichenkette "not valid" enthalten
Mit dem Texttool Deines geringsten Mißtrauens. Simples Bleistift mit grep:
kretschmer@tux:~$ cat foo.txt valid a b c invalid d e f
kretschmer@tux:~$ grep -v 'invalid' foo.txt valid a b c d e f
Andreas
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
A. Kretschmer schrieb:
am Fri, dem 13.07.2007, um 12:46:39 +0200 mailte K-M.P folgendes:
wie kann ich am elegantesten zeilen aus einem text-file löschen, die eine bestimmte zeichenkette enthalten?
bsp.: lösche alle zeilen aus simdat.durchlauf1, die zeichenkette "not valid" enthalten
Mit dem Texttool Deines geringsten Mißtrauens. Simples Bleistift mit grep:
kretschmer@tux:~$ cat foo.txt valid a b c invalid d e f
oder vor Ort: ed
~$ ed foo.txt <<EOF /invalid/d w q EOF
~$
Tobias.
"K-M.P" preiss@ifl.tu-dresden.de writes:
hallo @all,
wie kann ich am elegantesten zeilen aus einem text-file löschen, die eine bestimmte zeichenkette enthalten?
bsp.: lösche alle zeilen aus simdat.durchlauf1, die zeichenkette "not valid" enthalten
Und falls Du Dir das tempfile handling bei den genannten grep-Beispielen sparen möchtest, nimmst Du:
perl -i -ne 'print unless /not valid/' logfile.txt
oder für Vorsichtige
perl -i.bak -ne 'print unless /not valid/' logfile.txt
Siehe "man perlrun", Optionen -i (in-place edit) und -n.
Steffen
lug-dd@mailman.schlittermann.de