Datum aus Datei auslesen und zwischenspeichern

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von kojack, 26.11.2010.

  1. kojack

    kojack Grünschnabel

    Dabei seit:
    26.11.2010
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo,

    bin in Sachen Shell ziemlicher Anfänger, benötige aber ein kleines Skript.

    Und zwar soll es mir aus einer *.log alle Einträge mit aktuellem Datum suchen und diese Einträge dann zwischenspeichern, so das ich anschließend mit diesen logs im Skript weiter arbeiten kann, also mir bestimmt logs für ein Monitoring greppe etc.

    Achso soll in einem CentOS funktionieren.

    THX
     
  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. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Ohne den Aufbau der log-Datei zu kennen, kann man Deine Frage nicht beantworten. Am einfachsten ist es, wenn die Eintraege, die Du suchst, jeweils vollstaendig in einer Zeile enthalten sind. Dann erzeugst Du das Datumsformat, das Du benoetigst, mit 'date' und suchst danach, zum Beispiel bei so einer Datei:
    Code:
    tim@triton:~$ cat test.datei 
    2010-11-25  gestern
    2010-11-26  heute
    2010-11-27  morgen
    
    Code:
    tim@triton:~$ DATE=$(date +%Y-%m-%d)
    tim@triton:~$ grep $DATE test.datei
    2010-11-26  heute
    
    Die Ausgabe von grep kannst Du dann in eine Datei umleiten, um sie so weiterzuverarbeiten.
     
  4. kojack

    kojack Grünschnabel

    Dabei seit:
    26.11.2010
    Beiträge:
    5
    Zustimmungen:
    0

    24.11.2010 09:57:27 Action: Incremental
    24.11.2010 09:57:27 Objects: /home/reoback/backups/
    24.11.2010 09:57:27 Options:
    24.11.2010 09:57:27 Server Window Start: 09:55:00 on 25.11.2010
    24.11.2010 09:57:27 ------------------------------------------------------------
    24.11.2010 09:57:27 Scheduler has been stopped.


    so sehen die logs aus..also eigentlich super
     
  5. kojack

    kojack Grünschnabel

    Dabei seit:
    26.11.2010
    Beiträge:
    5
    Zustimmungen:
    0
    hat den keiner ne idee???
     
  6. NoXqs

    NoXqs Routinier

    Dabei seit:
    07.05.2007
    Beiträge:
    420
    Zustimmungen:
    0
    Ort:
    Bremen
    Was benötigst du denn noch?
    Im 2. Beitrag wurde dir doch beschrieben, wie du es machen kannst.
    Was hast du denn von dem Vorschlag schon umgestezt und was funktioniert dabei nicht?
     
  7. kojack

    kojack Grünschnabel

    Dabei seit:
    26.11.2010
    Beiträge:
    5
    Zustimmungen:
    0
    das auslesen des datum funktioniert nicht und weiß nicht wie ich das ganze in einer variable etc abspeichere oder so.....

    sorry, aber bin auf dem Gebiet absoluter neuling....
     
  8. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Ich bin mal so dreist zu behaupten, dass mein Vorschlag Dein Problem, so wie Du es dargestellt hast, vollstaendig beantwortet. Da Du vor weiteren Problemen stehst, muesstest Du das Problem bitte nochmal genau schildern, am besten wieder mit Beispielen, wie input und output aussehen sollen.
     
  9. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  10. #8 Aqualung, 15.12.2010
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    Format des Datums TT.MM.YYYY

    Code:
    grep $(date +%d.%m.%Y) <logdatei(en)> 
     
  11. kojack

    kojack Grünschnabel

    Dabei seit:
    26.11.2010
    Beiträge:
    5
    Zustimmungen:
    0
    ok habs hinbekommen ^^


    so sah nochmal die Log aus

    Code:
    15.12.2010 09:55:03 Scheduler has been started by Dsmcad.
    15.12.2010 09:55:03 Querying server for next scheduled event.
    15.12.2010 09:55:03 Node Name: XXXXXXXXXXXXX
    15.12.2010 09:55:03 Session established with server XXXXX: Solaris SPARC
    15.12.2010 09:55:03   Server Version 5, Release 5, Level 3.0
    15.12.2010 09:55:03   Server date/time: 24.11.2010 09:55:03  Last access: 23.11.2010 10:17:01
    
    15.12.2010 09:55:03 --- SCHEDULEREC QUERY BEGIN
    15.12.2010 09:55:03 --- SCHEDULEREC QUERY END
    15.12.2010 09:55:03 Next operation scheduled:
    15.12.2010 09:55:03 ------------------------------------------------------------
    15.12.2010 09:55:03 Schedule Name:         XXXXXXXXXXXXXXXXXXXX
    15.12.2010 09:55:03 Action:                Incremental
    15.12.2010 09:55:03 Objects:                Ordnerpfad
    15.12.2010 09:55:03 Options:
    15.12.2010 09:55:03 Server Window Start:   09:55:00 on 24.11.2010
    15.12.2010 09:55:03 ------------------------------------------------------------
    15.12.2010 09:55:03Executing scheduled command now.
    15.12.2010 09:55:03 --- SCHEDULEREC OBJECT BEGIN XXXXXXXXXXXXXXXXX 24.11.2010 09:55:00
    15.12.2010 09:55:03 Incremental backup of volume 'Ordnerpfad'
    15.12.2010 09:57:27 Successful incremental backup of 'Ordnerpfad'
    
    15.12.2010 09:57:27 --- SCHEDULEREC STATUS BEGIN
    15.12.2010 09:57:27 Total number of objects inspected:       25
    15.12.2010 09:57:27 Total number of objects backed up:        2
    15.12.2010 09:57:27 Total number of objects updated:          0
    15.12.2010 09:57:27 Total number of objects rebound:          0
    15.12.2010 09:57:27 Total number of objects deleted:          0
    15.12.2010 09:57:27 Total number of objects expired:          0
    15.12.2010 09:57:27 Total number of objects failed:           0
    15.12.2010 09:57:27 Total number of bytes transferred:     5,50 GB
    15.12.2010 09:57:27 Data transfer time:                  115,54 sec
    15.12.2010 09:57:27 Network data transfer rate:        49.927,83 KB/sec
    15.12.2010 09:57:27 Aggregate data transfer rate:      40.083,27 KB/sec
    15.12.2010 09:57:27 Objects compressed by:                    0%
    15.12.2010 09:57:27 Elapsed processing time:           00:02:23
    15.12.2010 09:57:27 --- SCHEDULEREC STATUS END
    15.12.2010 09:57:27 --- SCHEDULEREC OBJECT END XXXXXXXXXXXXXXXXX 24.11.2010 09:55:00
    15.12.2010 09:57:27 Scheduled event 'XXXXXXXXXXXXXXXXXXXXX' completed successfully.
    15.12.2010 09:57:27 Sending results for scheduled event 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'.
    15.12.2010 09:57:27 Results sent to server for scheduled event 'XXXXXXXXXXXXXXXXXXXXXXXXXX'.
    15.12.2010 09:57:27 ANS1483I Schedule log pruning started.
    15.12.2010 09:57:27 ANS1484I Schedule log pruning finished successfully.
    15.12.2010 09:57:27 Querying server for next scheduled event.
    15.12.2010 09:57:27 Node Name: XXXXXXXXXXXXXXX
    15.12.2010 09:57:27 Session established with server XXXXXXXXXX: Solaris SPARC
    15.12.2010 09:57:27   Server Version 5, Release 5, Level 3.0
    15.12.2010 09:57:27   Server date/time: 24.11.2010 09:57:27  Last access: 24.11.2010 09:55:04
    
    15.12.2010 09:57:27 --- SCHEDULEREC QUERY BEGIN
    15.12.2010 09:57:27 --- SCHEDULEREC QUERY END
    15.12.2010 09:57:27 Next operation scheduled:
    15.12.2010 09:57:27 ------------------------------------------------------------
    15.12.2010 09:57:27 Schedule Name:         XXXXXXXXXXXXXXX
    15.12.2010 09:57:27 Action:                Incremental
    15.12.2010 09:57:27 Objects:                Ordnerpfad
    15.12.2010 09:57:27 Options:
    15.12.2010 09:57:27 Server Window Start:   09:55:00 on 25.11.2010
    15.12.2010 09:57:27 ------------------------------------------------------------
    15.12.2010 09:57:27 Scheduler has been stopped.
    
    und die lösung

    Code:
    #!/bin/bash
    #Check des Tivoli Update
    
    datum=$(date +%d.%m.%Y)
    
    declare -i backup=0
    declare -a buffer
    declare -i cnt=0
    
    exec</tsm/client/base/tsmsched.log
    
    while read line; do
    
            zeile=${line:0:10}
            if [ "$zeile" == "$datum" ]; then
                    buffer[$cnt]=$line
                    let cnt++
            fi
    done
    
    if [ -z "${buffer[0]}" ]; then
    
            echo "No Log today!?"
    
    else
            for ((i=0 ; i <= $cnt ; i = i + 1)); do
                    temp=${buffer[$i]}
                    logzeile=${temp:20:26}
    
                    if [ "$logzeile" == "Successful incremental bac" ]; then
                            let backup++
                    fi
            done
    
                    if [ "$backup" == 1 ]; then
                            echo "OK: Backup successful!"
                    else
                            echo "Critical: Log exists, but no sucessful backup!?"
    
                    fi
    
    
    fi
    
    
     
Thema: Datum aus Datei auslesen und zwischenspeichern
Besucher kamen mit folgenden Suchen
  1. zwischenspeicher in datei bash

Die Seite wird geladen...

Datum aus Datei auslesen und zwischenspeichern - Ähnliche Themen

  1. Dateien nach Datum finden

    Dateien nach Datum finden: Hallo zusammen, ich würde gerne Wissen wie ich am einfachsten Dateien nach einem bestimmten Datum in einem Verzeichnis suchen kann. Das...
  2. Datum innerhalb einer Datei wandeln dd.mm.jjjj auf jjj-mm-dd

    Datum innerhalb einer Datei wandeln dd.mm.jjjj auf jjj-mm-dd: Hallo Leute! Mein Problem ist das Datumsformat inerhalb einer Textdatei. Kann man mit "sed" diese Textdateien so ändern, daß ich die Zeilen in...
  3. [Tcl / Shell] Ändern einer Datei per vi - Änderungsdatum einer Datei erfassen

    [Tcl / Shell] Ändern einer Datei per vi - Änderungsdatum einer Datei erfassen: Hallo liebe Leute, ich habe zwei Probleme, die ich bisher nicht lösen kann, ich hoffe, ihr könnt mir hier weiterhelfen. Mein erstes Problem:...
  4. Dateien mit nach Erstellungsdatum in Ordner verschieben

    Dateien mit nach Erstellungsdatum in Ordner verschieben: Hallo Forum, ich habe ca. 10000 Dateien und möchte diese in Ordner nach Ihrem Erstellungsdatum verschieben. Die Ordner mit jahr-monat-datum...
  5. Dateien filtern, die kein Datum im Dateinamen haben - wie?

    Dateien filtern, die kein Datum im Dateinamen haben - wie?: Guten Morgen :) Ich habe ein Sicherungsscript vorgesetzt bekommen, mit der Aufgabe, dass es jetzt auf einmal nicht mehr alle Dateien in einem...