Zeile für Zeile auslesen und Befehl ausführen

S

struchli

Hallo Zusammen

Ich habe folgendes Problem:
Ich möchte eine Datei zeilenweise auslesen und jede Zeile als Pattern für grep verwenden. Die Resultate möchte ich dann in ein File schreiben.
Für das Zeilenweise Auslesen einer Datei habe ich schon etwas gefunden. Leider funktioniert es nicht wie gewünscht.
Code:
#!/bin/bash
#exec 2>&1
#set -vx
#PS4='[nsc: 19]+ '
#export PS4
for line in `cat /tmp/Organisation.txt`;do
    grep $line /tmp/MIT_TMP.tmp >> /tmp/MIT_ALL_DATE.txt
done

Den grep-Befehlt funktioniert so, wenn er nicht im Script steht. Auch das zeilenweise Auslesen habe ich mit einem echo $line getestet und funktioniert einwandfrei.
Wenn ich das Script ausführe, läuft es unendlich lange, macht aber gar nichts.
Die Datei Organisation.txt hat ca. 6000 Zeilen und auf jeder Zeile steht eine Nummer.
Die Datei MIT_TMP.tmp hat ca. 10'000'000 Zeilen.
Das System ist AIX.

Kann mir jemand weiterhelfen?

Vielen Dank für die Hilfe Gruss Nico
 
Sollte so laufen:
Code:
#!/bin/bash
while read line; do
     grep "$line" /tmp/MIT_TMP.tmp 
done </tmp/Organisation.txt >/tmp/MIT_ALL_DATE.txt

Ach ja: Mal "grep -f " getestet?
 

Ähnliche Themen

Mit smartctl hinter verschiedenen Controllern auslesen.

Zeilenweise auslesen und in Variable speichern / übergeben

Zeile an txt anhängen

faxen geht nicht mehr

Zurück
Oben