echo Geschrieben 14. Januar 2002 Geschrieben 14. Januar 2002 ola... ich brauche einen tip, wie ich über eine batchdatei dateien löschen lassen kann, welche z.B. älter sind als fünf tage. ich sichere unseren MSDE SQLserver via eine batchdatei, welche mir das "data"-verzeichniss des servers verzipt und das aktuelle tagesdatum in den dateinamen einfügt... @echo off net stop mssqlserver for /f "tokens=2-4 delims=. " %%a in ('date/t') do set tag=%%a&set monat=%%b&set jahr=%%c c:\programme\winzip\wzzip \\jupiter\systemverwaltung$\pronto\public_pronto\data-%tag%-%monat%-%jahr%.zip c:\mssql7\data\*.* net start mssqlserver es wird also auf dem fileserver (welcher täglich gesichert wird)täglich eine datei im folgenden format angelegt: BSP: "data-11-01-2002.zip" da ich vermeiden möchte, das mir der fileserver irgendwann "explodiert" ist es nötig, das nach einem bestimmten algorythmus ältere dateien wieder gelöscht werden, dies sollte über der selben batchdatei geschehen... d.h. nach fünf tagen befinden sich folgende dateien auf dem file server: data-11-01-2002.zip data-12-01-2002.zip data-13-01-2002.zip data-14-01-2002.zip data-15-01-2002.zip am darauffolgenden tag (wieder montag, da die sicherung von Mo - Fr stattfindet) sollte die datei "data-11-01-2002.zip" automatisch gelöscht werden, am dienstag die nächste usw... any ideas...??? alo echo... Zitieren
beetFreeQ Geschrieben 14. Januar 2002 Geschrieben 14. Januar 2002 Hmm - also per "normaler" Batch wird's wohl schwierig! Um mit dem Systemdatum zu arbeiten, mußte ja mit leider völlig undurchsichtigem Systemcode arbeiten, und damit zu rechnen und zuverlässig Dateien zu löschen dürfte problematisch werden. Ich würd eher mal im Netz nach einem einfachen kleinen Dos-Tool suchen, das Datumsoperationen per Commandline unterstützt. Vielleicht helfen Dir ja folgende Links weiter: http://www.jfitz.com/dos http://lf.8k.com/TOOLS/TOOLS.HTM Zitieren
echo Geschrieben 15. Januar 2002 Autor Geschrieben 15. Januar 2002 ola... für alle die es interessiert, hier die von mir angewandte lösung. musste erstmal eine nacht drüber schlafen --> eure meinungen und anregungen bzw. befürchtungen sind willkommen @echo off rem for /f "tokens=2-4 delims=. " %%a in ('date/t') do set tag=%%a&set monat=%%b&set jahr=%%c del \\jupiter\pronto\public_pronto\*-V1.zip ren \\jupiter\pronto\public_pronto\*-V2.zip *-V1.zip ren \\jupiter\pronto\public_pronto\*-V3.zip *-V2.zip ren \\jupiter\pronto\public_pronto\*-V4.zip *-V3.zip ren \\jupiter\pronto\public_pronto\*-V5.zip *-V4.zip rem net stop mssqlserver c:\programme\winzip\wzzip \\jupiter\pronto\public_pronto\data-%tag%-%monat%-%jahr%-V5.zip c:\mssql7\data\*.* net start mssqlserver d.h. es werden vorab schon mal 5 dateien erstellt: data-*-V1.zip data-*-V2.zip data-*-V3.zip data-*-V4.zip data-*-V5.zip (* = platzhalter fürs datum) winzip erstellt erstellt generell nur eine data-*-V5.zip (dies ist also immer die neueste) bei jedem durchlauf des scripts wird die datei "data-*-V1.zip" gelöscht. die anderen werden um eins nach oben umbenannt d.h data-*-V2.zip -> data-*-V1.zip data-*-V3.zip -> data-*-V2.zip data-*-V4.zip -> data-*-V3.zip data-*-V5.zip -> data-*-V4.zip und fertig ist die laube... alo echo... ps: warum der zeilenumbruch im code so seltsam entzieht sich meiner kenntniss Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.