In Bash durch jede Zeile einer Datei gehen und Keywords oder neue Zeile in andere Datei schreiben
Moin zusammen,
könnt ihr mir bitte bei dieser Sache helfen?
Ich habe eine Textdatei data.txt. Ich möchte durch jede Zeile gehen und wenn eine Zeile z.B. "abc" oder "xyz" enthält, weitere Strings in eine andere Datei info.txt schreiben. Wenn keiner der Strings enthalten ist in data.txt, soll *EINE* neue Zeile in info.txt geschrieben werden!
Bsp.:
data.txt enthält:
Andere Wörter, die bei erkannten Strings in info.txt geschrieben werden sollen.
E-Mail = 'Mail; Kommunikation; Nachricht; Message;'
Auto = 'Automobil; Fahrzeug; PKW;'
Das Ergebnis in info.txt müsste also so aussehen:
(Die Leerzeile muss gesetzt werden, weil ich später die Datei mit anderen wieder zusammensetzen muss.)
Könnt ihr mir helfen? Bekomme das leider nicht allein hin.
Ich lobe ein Bier (=5er per PayPal) für den aus der den Befehl baut. (Leider nur für den Ersten ;)
Danke und Gruß,
Jensen
könnt ihr mir bitte bei dieser Sache helfen?
Ich habe eine Textdatei data.txt. Ich möchte durch jede Zeile gehen und wenn eine Zeile z.B. "abc" oder "xyz" enthält, weitere Strings in eine andere Datei info.txt schreiben. Wenn keiner der Strings enthalten ist in data.txt, soll *EINE* neue Zeile in info.txt geschrieben werden!
Bsp.:
data.txt enthält:
Katze
E-Mail
Tisch
Auto
Andere Wörter, die bei erkannten Strings in info.txt geschrieben werden sollen.
E-Mail = 'Mail; Kommunikation; Nachricht; Message;'
Auto = 'Automobil; Fahrzeug; PKW;'
Das Ergebnis in info.txt müsste also so aussehen:
<leere Zeile>
Mail; Kommunikation; Nachricht; Message;
<leere Zeile>
Automobil; Fahrzeug; PKW;
(Die Leerzeile muss gesetzt werden, weil ich später die Datei mit anderen wieder zusammensetzen muss.)
Könnt ihr mir helfen? Bekomme das leider nicht allein hin.
Ich lobe ein Bier (=5er per PayPal) für den aus der den Befehl baut. (Leider nur für den Ersten ;)
Danke und Gruß,
Jensen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 311145
Url: https://administrator.de/contentid/311145
Ausgedruckt am: 25.11.2024 um 00:11 Uhr
2 Kommentare
Neuester Kommentar
You could also use 'awk'
Regards
awk 'BEGIN{arr["Auto"] = "Automobil; Fahrzeug; PKW;"; arr["E-Mail"] = "Mail; Kommunikation; Nachricht; Message;"} {print (arr[$1]) ? arr[$1] : ""}' data.txt >info.txt