Anzeige:
Ergebnis 1 bis 6 von 6

Thema: if-abfrage [dateigröße]

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.10.2001
    Beiträge
    46

    if-abfrage [dateigröße]

    hallo leute,

    ich habe ein shellscript für meine anforderung angepasst - hierfür reichte mein scripting-wissen gerade noch, jedoch hänge ich an einem prob.

    in diesem script werden div. ergebnisse in eine log-datei unter /var/log/ergbnis.log geschrieben, auch wenn alles OK ist. dies bedeutet nun aber, das die datei ziemlich gross werden kann, und so unnötigen plattenplatz beansprucht.

    folgendes würde ich gerne mit einer if-anweisung einbauen:
    if /var/log/ergebnis.log > 5120000byte; then
    rm -r /var/log/ergenis.log
    echo `date`" # Datei wurde neu angelegt"
    else
    ......weiter im Shellscript...blablablabla

    Wie programmiere ich das??? liege ich mit meinem script schon irgendwie richtig?
    Gruß hmikux aus Hessen
    Zenwalk
    CPU: AMD K7 1600+XP / 512MB DDR-RAM / NVIDIA-GF2-MX-Chip

  2. #2
    Registrierter Benutzer Avatar von pitu
    Registriert seit
    07.06.2002
    Ort
    Nürnberg
    Beiträge
    142
    Beuntz das Programm "logger", dann kannst du es ueber den syslogd steuern.

    gruss,
    pitu
    11 Fehler in Windows, 88 Loesungen, 0 funktionieren.

    Dieser Beitrag steht unter der GNU Free Documentation License.

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    719
    du kannst doch sicher ls irgendwie einspannen, das es dir die Dateigröße anzeigt. Dann mit test testen und ggf. Datei löschen.

  4. #4
    Registrierter Benutzer Avatar von phate
    Registriert seit
    14.02.2003
    Beiträge
    149
    Also entweder mit etwas in Richtung
    Code:
    FILESIZE=`du -k /var/log/ergenis.log  | cut -f 1`
    
    if [$FILESIZE -gt 5120]; then
        rm -r /var/log/ergenis.log 
    fi
    in Dein Skript einbauen oder aber du verwendest logrotate. logrotate wird per cron periodisch ausgeführt und überprüft ihm zu konfigurierende Logdateien auf verschiedene Kriterien. Dort kannst Du auch angeben, dass Deine Logdatei bei Erreichen einer gewissen Grösse neu angelegt wird. Genaueres siehe
    Code:
    man logrotate

  5. #5
    Registrierter Benutzer
    Registriert seit
    05.10.2001
    Beiträge
    46
    hallo,

    danke für die hilfe, werde mal die lösung von phate versuchen!!!

    DANKE!!!
    Gruß hmikux aus Hessen
    Zenwalk
    CPU: AMD K7 1600+XP / 512MB DDR-RAM / NVIDIA-GF2-MX-Chip

  6. #6
    Registrierter Benutzer Avatar von phate
    Registriert seit
    14.02.2003
    Beiträge
    149
    Noch ein wenig Hilfe zur Selbsthilfe. Die eckigen Klammer nach if sind ein Synonym für das Kommando Test, mit dem dann per -gt der Vergleich der beiden Werte durchgeführt wird. Schadet nicht sich mal die manpage dazu an zu schauen.
    Code:
    man test

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •