log-auswertung

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von elzschiko, 25.04.2006.

  1. #1 elzschiko, 25.04.2006
    elzschiko

    elzschiko Grünschnabel

    Dabei seit:
    25.04.2006
    Beiträge:
    2
    Zustimmungen:
    0
    hallo,

    da ich was shell-scripting angeht eigentlich keinen plan habe hoffe ich das ihr mir helfen könnt.
    ich möchte aus der datei /var/log/messages die zeiten herausfiltern wenn mein linux-pc eine internet-verbindung aufbaut und beendet.
    ich habe mir das so gedacht:

    `grep 'ippp0 connected' /var/log/messages`
    `grep 'hangup ippp0' /var/log/messages`

    Apr 23 13:38:10 ipcop kernel: isdn_net: ippp0 connected
    Apr 23 13:39:20 ipcop kernel: isdn_net: local hangup ippp0


    jetzt brauch ich ja nur die datums und die uhrzeit..

    `grep 'ippp0 connected' /var/log/messages | cut -b 1-16`
    `grep 'hangup ippp0' /var/log/messages | cut -b 1-16`

    Apr 25 21:57:40
    Apr 25 22:00:11

    so weit so gut - aber wie bekomme ich die einzelnen daten jetzt hintereinander in ein datei?
    also so:

    Apr 25 21:57:40 - Apr 25 22:00:11
    Apr 25 22:05:00 - Apr 25 22:10:00

    hat da jemand eine idee???


    danke im voraus
    daniel
     
  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. #2 theborg, 26.04.2006
    theborg

    theborg KBitdefender Programierer

    Dabei seit:
    06.08.2004
    Beiträge:
    688
    Zustimmungen:
    0
    Ort:
    Hamburg
    con$ = "grep 'ippp0 connected' /var/log/messages | cut -b 1-16"
    disk$ = "grep 'hangup ippp0' /var/log/messages | cut -b 1-16"

    echo con$ & "-" & disk$ & "\n">> text.txt
     
  4. #3 ninguno, 26.04.2006
    ninguno

    ninguno Tripel-As

    Dabei seit:
    13.05.2005
    Beiträge:
    162
    Zustimmungen:
    0
    Code:
    grep -E 'ippp0 connected|hangup ippp0' /var/log/messages | cut -b 1-16  >internet.log
     
  5. #4 Schlaubi_fi.de, 26.04.2006
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    und das soll Shellskripting sein? :think: :devil:

    Oder so...
    Code:
    awk '/.*ippp0 connected$/ { print $1,$2,$3} /.*local hangup ippp0$/ { print $1,$2,$3}' /var/log/messages >internet.log
     
  6. #5 elzschiko, 26.04.2006
    elzschiko

    elzschiko Grünschnabel

    Dabei seit:
    25.04.2006
    Beiträge:
    2
    Zustimmungen:
    0
    danke für die antworten...

    die lösung von "theborg" funktioniert ja vorn und hinten nicht. trotzdem danke.

    die beiden anderen sachenfunktionieren - leider nur zur hälfte.
    ich habe die daten im logfile stehen aber nur untereinander.
    start und endzeit sollten aber irgendwie hintereinander stehen...

    lässt sich das noch irgendwie machen?


    grüsse
    daniel
     
  7. Anzeige

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

    codc /dev/null

    Dabei seit:
    12.01.2004
    Beiträge:
    607
    Zustimmungen:
    0
    man printf

    ein bischen musst du auch selber machen oder soll dir hier einer das perfekte Script schreiben?
     
  9. #7 Schlaubi_fi.de, 27.04.2006
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Probiers mal so:
    Code:
    awk '/.*ippp0 connected$/ { printf $1" "$2" "$3" - " } /.*local hangup ippp0$/ { print $1,$2,$3 }' /var/log/messages >internet.log
     
Thema:

log-auswertung