[Batch/Bash] Datei mit Inhalt einer anderen Filtern

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von bloodyphoenix, 7. August 2009 .

  1. 7. August 2009
    Datei mit Inhalt einer anderen Filtern

    Hey Leute,
    hab mal ne Frage zum thema Bash [nicht Batch - wer hat sich den Präfix eigentlich ausgedacht -.-]
    und zwar gehts darum, dass ich zwei dateien habe, beispielsweise so:

    Datei1:
    123
    456
    789
    111
    222
    333

    Datei2:
    222
    123
    789

    Nun möchte ich als am Ende eine Datei rausbekommen, in der nur die Einträge aus Datei 1 stehen, welche in Datei 2 nicht vorkommen, wobei die Reihenfolge aus Datei 1 beibehalten werden sollte, die Einträge in Datei 2 aber nicht unbeidngt die selbe Reihenfolge haben, wie die aus Datei 1

    Also praktisch sowas:
    456
    111
    333

    Habs bisher so gelöst, dass ich mit einer for-schleife mit grep schaue, ob der aktuelle Eintrag aus Datei 1 in Datei 2 vorkommt und in dem Falle, dass das nicht so ist, den Eintrag an eine (neue) Datei anhänge, sodass am Ende halt alle Einträge aus Datei 1 vorkommen, die nicht in Datei 2 stehen, allerdings wird je nach größe der ersten Datei grep hunderte male aufgerufen, was mMn. suboptimal ist.

    Hab vielleicht an diff gedacht, weiss aber nicht wie ich das damit anstellen soll.

    Vielleicht hat da wer ja ne optimalere Lösung, wäre für jede Hilfe dankbar.
     
  2. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.