Logfile erstellen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Thomy, 25.06.2008.

  1. Thomy

    Thomy Jungspund

    Dabei seit:
    20.10.2005
    Beiträge:
    21
    Zustimmungen:
    0
    Hallo Leute


    Ich hab mir ein recht großes Shell-Skript gbastelt, dass von verschiedenen Helferprogrammen (SED, AWK...). Ich will die Fehlerausgabe (auf Kanal 2) in einer Logdatei einfangen, aber mit vorangestelltem Datum. Wie mache ich das am Besten, weil


    awk -F: '{......}' file 2>> $LOGFILE

    geht zwar aber halt ohne Datum. Kann ich das auch irgendwie in eine Variable schreiben, und vorne dran das Datum anhängen und diese dann ins Logfile schreiben (wenn ja wie?)??


    Gruß Thomy
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. dizzgo

    dizzgo Lernbereite Riesenratte

    Dabei seit:
    04.08.2005
    Beiträge:
    573
    Zustimmungen:
    0
    Ort:
    /ch/sg///
    Nicht hundertprotzentig elegant, aber es funktoniert:
    Code:
    awk -F: '{......}' file 2 | sed "s/^/$(date): /" >> $LOGFILE
    
    Datum formatieren wie gewünscht, siehe 'man date'...
    Gruss
    d22
     
  4. #3 Gott_in_schwarz, 25.06.2008
    Gott_in_schwarz

    Gott_in_schwarz ar0

    Dabei seit:
    22.04.2007
    Beiträge:
    546
    Zustimmungen:
    0
    Ort:
    Niedersachsen
    Wohl eher so, oder?
    Code:
    awk -F: '{......}' file 2>&1 | sed "s/^/$(date): /" >> $LOGFILE
    Wenn man aber nur an stderr interessiert ist, stdout aber nicht ins Nirvana (/dev/null) schicken will (weil mans eventuell noch irgendwie braucht), hilft das hier vielleicht:
    Code:
    exec 3>&1; awk '{...}'  2>&1 1>&3 3>&- | sed "s/^/$(date): /" 1>&2 3>&- >> LOGFILE
    Habi ich aus csh: why not?:
    Mit "3>&-" wird einfach nur der FD 3 geschlossen.
    Wobei 100%tig versteh ich das nicht. Will das vielleicht mal Jemand in Detail erklären? stdout ist immernoch auf der ursprünglichen Adresse von stdout (FD 3 zeigt ja auf &1), aber irgendwie auch nicht, hm.
     
  5. #4 Wolfgang, 25.06.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Der Trick ist ganz einfach:
    STDOUT geht nach 3 und das wird geschlossen.
    Damit wird einfach STDOUT unterdrückt, und STDER bleibt übrig.
    Etwas verwirrend aber eine Möglichkeit.
    Ich kenne die csh nicht richtig, habe im Moment auch wenig Lust da nachzuleden. Aber ich denke, dass es auch reichen würde, STDERR irgendwo in's Nirvana zu schicken, um STDER rauszufiltern.

    Gruß Wolfgang
     
  6. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

Logfile erstellen

Die Seite wird geladen...

Logfile erstellen - Ähnliche Themen

  1. Zwei Fragen 1. zu OpenVPN und 2. zu Logfiles

    Zwei Fragen 1. zu OpenVPN und 2. zu Logfiles: Hi, habe seit kurzem ein neues Spielzeug :brav: Seagate FreeAgent DockStar. [GELÖST Danke @ Ulix] Leider habe ich noch nicht viel mit...
  2. script um logfile zu monitoren/anzupassen

    script um logfile zu monitoren/anzupassen: Hallo zusammen, ich hoffe hier kann mir jemand helfen:-) Folgendes Problem. Ich benötige ein script (perl), mit dem ich bestimmte logfiles...
  3. Datumsformat bei Logfileausgabe ändern

    Datumsformat bei Logfileausgabe ändern: Hi... ich habe ein folgendes Problem. Ich möchte ein Logfile per Skript analysieren. Leider ist das Datumsformat recht unpassend, um es per...
  4. Logfile der FW in ein seperates Logfile schicken

    Logfile der FW in ein seperates Logfile schicken: Hallo, (OS = CentOS 5.2) eigentlich brauche ich keine FW auf der Linuxkiste (Bintec-Router im Netz) , aber irgendwie wollte ich mir die Zeit...
  5. Logfile für root ????

    Logfile für root ????: Hallo Leute, ich war als root unterwegs und wollte die Eigentümer des Verzeichnises /data einheitlich auf LinuxFarmer setzen. Ich setzte...