Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Log-Dateien automatisiert löschen

Frage Entwicklung Batch & Shell

Mitglied: joec

joec (Level 1) - Jetzt verbinden

26.10.2006, aktualisiert 30.10.2006, 12138 Aufrufe, 8 Kommentare

Ich habe eine Batch-Datei zur Datensicherung erstellt. Diese erstellt auch Log-Datein im Format: Beispiel_JJJJMMTT.log. Nach einer gewissen Zeit sollen die alten Dateien gelöscht werden.

Hallo.

Ich nutze die Funktion Log-Dateien zu erstellen von Robocopy. In meiner Batch-Datei wird dann zur Unterscheidung an den Dateinamen das jeweils aktuelle Datum angehängt (beispiel_JJJJMMTT.log).

Nun sollen im Anschluss an die tägliche Datensicherung ältere Log-Dateien (z.B. älter 5 Tage) automatisch gelöscht werden.

Mein Ansatz war, über die Differenz an Tagen (aktuelles Datum - Datum an Log-Datei) zu entscheiden, welche Dateien gelöscht werden. Ich habe aber keine solche Funktion gefunden.

Vielleicht stelle ich mir dies auch zu kompliziert vor, aber meine Suche hat leider auch nichts ergeben.

Schönen Tag noch.

joec
Mitglied: AxelHahn
26.10.2006 um 16:03 Uhr
Hallo joec,


Mit batfiles kannst du keine Datumsberechnung ausführen. Es muss ein Zusatztool oder ein Script (VP oder Perl) her.

Ansätze findest entweder hier:
http://www.administrator.de/Dateien_l%F6schen%2C_wenn_bestimmte_Datei_% ...

... oder mit delage32:
http://home.mnet-online.de/horst.muc/win/delage32.zip
http://home.mnet-online.de/horst.muc/win/delage.htm

... oder showdate, was ich mir zur Datumsberechnung geschrieben habe:
http://www.axel-hahn.de/axel/page_compi/wp_showdate.htm
Es kann etwa so aussehen - der Parameter /d: gibt eine Differenz in Tagen an:

set tmpbat="%temp%~tmpbat.bat"
showdate /f:"yymmdd" /d:-45 /p:"set oldDatum=" > %tmpbat%
call %tmpbat%
del %tmpbat%

del [Logverzeichnis]\prefix_%oldDatum%.log



Viele Grüsse
-= Axel =-
Bitte warten ..
Mitglied: Biber
26.10.2006 um 16:13 Uhr
Mit batfiles kannst du keine Datumsberechnung ausführen
...ohne albern zu werden jedenfalls nicht...
Bitte warten ..
Mitglied: miniversum
26.10.2006 um 16:36 Uhr
Vorschlag warum nicht folgender ansatz:
Du machst täglich eine Sicherung schreibst du. Also willst du alle löschen außer den 5 neusten.
Dann lass dir doch mit dem Dir Befehl alle logdateien (*.log) nach Datum sortiert ausgeben. Dabei stehen die neusten Dateien zuerst und ohne Header (mit der /b Option).
Dann gehst du über diese Liste mit einer for-Schleife drüber und gist dort ein Skip=5 mit.
So werden die ersten 5 Dateien (die 5 neusten) übersprungen udn alle andern gelöscht.

miniversum
Bitte warten ..
Mitglied: joec
27.10.2006 um 12:16 Uhr
Hallo Axel,

Vielen Dank für die schnelle und ausführliche Antwort.

Showdate ist natürlich genau richtig für diese Augabe (und auch weitere Aufgaben im Gebiet Backups und Log-Dateien) . Werde ich gleich ausprobieren.

Schönes Wochenende.

joec
Bitte warten ..
Mitglied: joec
27.10.2006 um 12:22 Uhr
Hallo miniversum,

diese Lösung ist natürlich auf den ersten Blick sehr naheliegend und da ich in den Verzeichnis nur diese Logdateien habe auch praktikabel. Manchmal sieht man die naheliegensten Lösungen erst auf den zweiten Blick.

Schönes Wochenende.

joec
Bitte warten ..
Mitglied: AxelHahn
29.10.2006 um 12:17 Uhr
Hallo joec,

ich habe noch ein Update der showdate.exe auf meiner Disk aber noch nicht im Web - falls du noch eine Verschiebung um Stunden/ Minuten brauchen solltest:
http://www.axel-hahn.de/axel/page_compi/wp_showdate.htm

Viele Grüsse
Axel
Bitte warten ..
Mitglied: joec
29.10.2006 um 20:48 Uhr
Hallo Axel,

danke für den Hinweis auf das Update. Für die Backup-Logs werde ich zwar sicher keine Verschiebung um Stunden/Minuten benötigen, aber man kann ja nicht wissen was noch kommt.

Viele Grüße

joec
Bitte warten ..
Mitglied: Biber
30.10.2006 um 17:53 Uhr
Ich setz diesen Thread auch mal auf gelöst.
Und gebe dem Beitrag wegen der vielen guten Ansätze und Links mal ein paar Sternchen mit auf den Weg.

Danke an alle.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Windows Server
Powershell - suche nach gelöschter Datei aus LOG (15)

Frage von krischeu zum Thema Windows Server ...

Windows Server
gelöst Windows 2012R2 kann Datei nicht löschen (2)

Frage von Akcent zum Thema Windows Server ...

Batch & Shell
gelöst Löschen von Dateien nach bestimmten Zeitmuster (8)

Frage von NetzwerkDude zum Thema Batch & Shell ...

Windows Server
gelöst PowerShell Inhalt einer csv Datei löschen (4)

Frage von makaroni zum Thema Windows Server ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (31)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...