Die guten alten Batch(DOS) Befehle :-)

  • Hallöchen,
    Ich suche verzweifelt nach einer Möglichkeit einer TXT Datei (die als LOG fungiert) mit einer maximalen Größe zu versehen.


    Da das Teil ja nicht überlaufen soll, sollen alte Einträge nach 64kb maximaler Größe gelöscht werden und durch neue ersetzt werden.


    Wie realisiere ich das? Habt ihr eine Idee?


    Danke schonmal !


    Dominik

  • Einfach nur mit Boardmitteln also ohne Programmierung und dann noch automatisiert? Sehr schwer bis gar nicht machbar...

    -> Tristan @ Work <-
    --

  • dos-befehle? also command.com?
    der win32-ersatz dafür ist cmd, und ist ganz aktuell ;) ... diese aufgabe wird man trotzdem nicht damit lösen können. ich würde eher richtung wsh/vbs schauen

    !ND - E71

  • Mit Befehlen allein geht es afaik nicht, aber in Pascal oder C waere es nicht so schwierig, da kann man die Dateigroesse einlesen und dan entscheiden ob es angehaent oder ueberschrieben wird.

  • also bevor ihr hier noch zum cpp-coden beginnt:


    [checksize.vbs]


    Dim fso, f
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.GetFile("MeineDatei.txt")
    if( f.size>65536 ) then f.delete

    !ND - E71

  • !ND: Das Log soll so wie ich das verstanden habe immer 64k haben und die ältesten Einträge dann gelöscht werden, nicht das ganze File...


    Gruß,


    Henning.

    ________________________

  • Hi,


    mit genug Verrenkungen geht es mit Bordmitteln:
    http://home7.inet.tele.dk/batfiles/main/batfaq2.htm#64
    speichert die Dateigroesse in einer Variable.


    Mit genug Verrenkungen kannst Du die dann abfragen und entsprechend das File loeschen, wenn es eine bestimmte groesse erreicht hat.


    Natuerlich geht es mit einem Mindestmass an Tools (ich denke da an die head und tail aus der Betriebssystem-Welt) deutlich einfacher.


    cu
    XlF

  • Er will aber nicht die Datei löschen sondern den Rest des Logs abschneiden - so, daß immer nur die letzten 64 Kilobyte im Log stehen - da bringt dir die Dateigröße auch nicht soviel ...

    -> Tristan @ Work <-
    --

  • Zitat

    Original geschrieben von XNeo
      !ND: Das Log soll so wie ich das verstanden habe immer 64k haben und die ältesten Einträge dann gelöscht werden, nicht das ganze File...


    aso... sozusagen die letzten 64kb.
    das schreit nach tail - das gibts allerdings leider nicht serienmässig unter windows ;)

    !ND - E71

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!