Lars Engels <lars.engels(at)0x20.net> wrote:
> Sorry fürs OT, aber ihr wart die ersten, die mir eingefallen seid ;)
> Ich habe eine Tab-Stop getrennte Textdatei mit 2 Spalten.
> Wie kann ich nur die Zeilen ausgeben, in denen in Spalte 2 nichts steht
> und nicht "Dr.", "Dipl.-Inf" und andere Einträge stehen?
Ich verstehe Deine Logik nicht ganz. Wenn in Spalte 2
nichts steht, dann steht dort folglich auch nicht »Dr.«
oder irgendwas anderes. Was meintest Du also genau?
Wenn Du die Zeilen haben willst, wo Spalte 2 leer ist
ODER in Spalte 2 etwas steht, was nicht »Dr.« usw. ist:
awk -F\\t '$2 != "Dr." && $2 != "Dipl.-Inf"' datei.txt
oder
awk -F\\t '$2 !~ /^(Dr\.|Dipl\.-Inf)$/' datei.txt
Wenn keine Leerzeichen in den Spalten vorkommen, kannst
Du das »-F\\t« auch weglassen.
Oder (falls Dir sed lieber ist):
sed '/\tDr./d;/\tDipl.-Inf/d' datei.txt
Dort mußt Du aber anstelle von »\t« jedesmal ein echtes
Tab eingeben, da die Escape-Sequenz »\t« bei sed leider
nicht portabel ist.
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co KG, Oettingenstr. 2, 80538 München Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. "Perl will consistently give you what you want, unless what you want is consistency." -- Larry Wall To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Mon 05 Jul 2004 - 12:14:18 CEST