jens4ever
Goto Top

CSV-Daten zurechtbauen in ein Skript

Moin zusammen,

ich habe eine Datei "Datei", die so aufgebaut ist:

(Geburtstag; Name; E-Mailadresse)
0103; max-mustermann; m.mustermann@example.com
0107; lisa-musterfrau; l.musterfrau@example.com
1221; jens-musterkind; j.musterkind@example.com
(...)

Mit grep ziehe ich aus der Datei die Zeilen, die jeweils heute sind:
grep '1221' Datei > Datei2  

Meine Frage ist nun: Wie bekomme ich den String: "1221; jens-musterkind; j.musterkind@example.com" ins folgende Format bzw. in meinen Befehl eingebaut? (Postfix, SMTP relay)
cat /skripte/mail/namen/jens-musterkind | mail -s "Titel der Mail" -a "From: Jensen <jensen@example.com>" j.musterkind@example.com  

Habt ihr einen Tipp für mich, wie ich hier technisch am besten vorgehe?

Danke und frohes Fest.
Jens.

Content-Key: 291482

Url: https://administrator.de/contentid/291482

Printed on: April 19, 2024 at 15:04 o'clock

Mitglied: 114757
Solution 114757 Dec 21, 2015, updated at Feb 19, 2016 at 12:16:26 (UTC)
Goto Top
N'Abend Jensen,
#!/bin/bash
file="/path/test.csv"  
line=$(cat "$file" | grep $(date +%m%d) | tr -d " ")  
if [ ! -z "$line" ] ;then  
    name=$(echo "$line" | cut -d ';' -f2)  
    mail=$(echo "$line" | cut -d ';' -f3)  
    cat "/skripte/mail/namen/$name" | mail -s "Titel der Mail" -a "From: Jensen <jensen@example.com>" "$mail"  
fi

Gruß jodel32
Mitglied: 114757
114757 Feb 17, 2016 updated at 12:02:01 (UTC)
Goto Top
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen nicht vergessen.

jodel32