Hi,

ich habe ein Shell-Skript, das eine Liste definiert:

LIST="
Eintrag1
Eintrag2
Eintrag3
"

und ein Kommando, dass ebenfalls eine Liste ausgibt:

$(command)

Nun möchte ich alle Einträge, die in $LIST enthalten sind aus der Ausgabe des
Kommandos entfernen. Quasi

$(command) | grep -xv -e Eintrag1 -e Eintrag2 -e Eintrag3

Würde ich mit Dateien arbeiten, müsste folgendes gehen:

result="$(command | grep -xv -f LIST.txt)"

Nun möchte ich aber keine temporäre Datei schreiben, sondern würde lieber mit
der Variable arbeiten. Ich dachte nun, dass vielleicht folgendes funktioniert:

echo "${LIST}" | grep -xv -f - <$(command)

Das funktioniert aber nicht. uniq, das sich ebenfalls anbietet, arbeitet aber
auch eher mit Dateien. Eigentlich ist mein Problem simpel. Ich finde aber auch
online nichts, was mit weiterhilft.

Kann mir bitte jemand helfen?

Gruß, Daniel


Antwort per Email an