Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Dateien anhand von Datum löschen

Frage Entwicklung Batch & Shell

Mitglied: Chizze

Chizze (Level 1) - Jetzt verbinden

23.02.2009, aktualisiert 14:24 Uhr, 5418 Aufrufe, 2 Kommentare

Hallo Liebe Administratoren gemeinde,

ich habe zurzeit folgendes Problem:

ich muss aus einem Ordner, der Upatedatein enthält, Dateien löschen die älter sind als 5 Tage (Vom aktuellen Datum ausgehend).
Ich hab mich auch erstmal ran gesetzt und im Internet belesen und mein momentaner lösungsstand sie so aus, dass ich Datein löschen kann die 5 Tage älter sind, allerdings wird nicht auf den Monat oder das Jahr geachtet.
Um das zu besser erklären zu können ein kurzes Beispiel: heute - 23.02.2009, Dateien mit Erstelldatum 19.01.2009 oder 22.11.2008 bleiben alle bestehn. Das ist das Problem. Den Quelltext häng ich gern mit an.

Ich würde mich sehr freuen, wenn mir jemand weiterhelfen kann.


@echo off

set dd=%date:~3,2%
set m=%date:~6,2%
set y=%date:~9,13%
set /a tage=5

IF %dd% GEQ 6 (
set /a dd-=%tage%
) ELSE (
goto ende
)
IF %dd% LEQ 9 (
goto caldat2
rem set newdate=0%dd%.%m%.%y%
) ELSE (
goto caldat1
)
:caldat1
set newdate=%dd%.%m%.%y%
goto Main

:caldat2
set newdate=0%dd%.%m%.%y%
goto Main

:Main
FOR /F "tokens=1,4 skip=7 delims= " %%d in ('dir "C:\Inetpub\ftpSymantecUpdates\*.*"') DO (

IF not "%%e" =="Bytes" (
echo %%e - %%d

IF %newdate% GEQ %%d (
echo %%e, %%d
ECHO J | del C:\Inetpub\ftpSymantecUpdates\%%e
)
)
)
pause
:ende
quit
Mitglied: Bolle97
23.02.2009 um 15:53 Uhr
Hallo,

1. wurde über dieses Thema schon unzählige Male diskutiert, einfach mal suchen.

2. meine Empfehlung "DelAge32.exe"

Gruß René
Bitte warten ..
Mitglied: Chizze
24.02.2009 um 15:06 Uhr
Problem ist gelöst!

Da ich auf dem Server keine I-net freischaltung hab, konnte ich das Tool "DelAge32" nicht nutzen und hab nun mein Program Code zusammen bekommen.
Fals jmd mal das gleiche Problem haben wird, ich stellt den Quelltext noch mit zur Verfügung!


Rem ...Löscht Datein aus einem Verzeichnis die Älter sind als X Tage. Die größe X kann man in

der Letzten Zeile ändern, nach "GEQ".

@echo Off & setlocal EnableDelayedExpansion
PushD "x:\Ordner"

for %%i in (*.*) do (
for /f "tokens=1-3,5-7 delims=. " %%a in ("%%~ti %date%") do (
echo "set /a datediff= %%f*365 + %%e*30 + %%d - %%c*365 - %%b*30 -%%a"
if !datediff! GEQ 5 echo "%%i"
))
pause
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
14 Tage alte Dateien automatisch löschen - Shell (1)

Frage von traller zum Thema Batch & Shell ...

Windows Server
gelöst Administrator kann auf Server keine EXE-Dateien kopieren, löschen, anlegen (5)

Frage von Winfried-HH zum Thema Windows Server ...

Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Entwicklung
Versteckte .(Punkt)Dateien löschen (3)

Frage von DarkJM zum Thema Entwicklung ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...