formatiertes einlesen



  • Hi,
    Ich möchte bestimmte Infos aus einem postfix Log rausziehen habe aber probleme mit dem richtigen einlesen der Daten.

    Mein sscanf sieht momentan so aus: sscanf(buf, "%*s %*d:%*d:%*d %*s postfix/smtp[%*d]: %[^:]s: to=<%*[@]s@**%[>]s**", id, domain);

    Die eindeutige Mail ID wird auch richtig zugewiesen, jedoch klappts bei der Domain nicht.

    Bspl. Zeile Log: "Aug 12 11:11:11 mx1 postfix/smtp[11111]: 0345AF2E1C: to=<test@example.com>, blabla"

    Kann mir jemand sagen was ich da falsch mache?

    MfG gosha16

    //Habs selber gelöst: der ausdruck für ID und Domain muss:

    %[^:]%*[^@]@%[^>]
    

    lauten



  • Das 's' in

    %[^:]s: to=<%*[^@]s@%[^>]s
    

    ist jeweils auch falsch gewesen und ein bekannter Anfängerfehler.


Anmelden zum Antworten