Top-Themen

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

Veraltete Dateien aus spezifischen Unterverzeichnissen löschen

Frage Entwicklung Batch & Shell

Mitglied: Worlddiver

Worlddiver (Level 1) - Jetzt verbinden

02.08.2012, aktualisiert 14:38 Uhr, 3632 Aufrufe, 5 Kommentare

Hallo allerseits
Leider bin ich trotz intensiver Suche auf dem Web und auch auf dieser Seite noch nicht auf die richtige Lösung gestossen. Ich kann mir aber nicht vorstellen, dass ich der einzige bin, der vor diesem Problem steht.
Nun zähle ich auf eure Hilfe.

Aus einzelnen Unterverzeichnissen sollte ich automatisch Dateien löschen können, die älter als eine bestimmte Zeitspanne sind.
Ich habe z.B. folgende Verzeichnisstruktur:

D: 
  \Hauptordner1 
               \Ordner1                  (namens "Temp") 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
               \Ordner2 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
               \OrdnerN 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
  \Hauptordner2 
               \Ordner1                  (namens "Temp") 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
               \Ordner2 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
               \OrdnerN 
                       \Unterordner1 
                       \Unterordner2 
                       \UnterordnerN 
  \HauptordnerN
In der zweiten Ebene (Ordner) gibt es jeweils einen Ordner namens "Temp". IN diesem Temp-Ordner muss nun (in allen Unterordnern, die ganz unterschiedlich heissen können) nach Dateien mit einem bestimmten Namensmuster (z.B. Name*.zip und Name*.map) gesucht und DIE Dateien gelöscht werden, die älter als 10 Tage sind.

Die Crux an der Sache ist, das Namensmuster würde auch auf gleichnamige Dateien in Ordnern der zweiten Ebene greifen. Diese Dateien dürfen aber NICHT gelöscht werden. Weiter kommt hinzu, dass die Anzahl an "Hauptordner" (erste Ebene) und Unterordner (dritte Ebene) dynamisch wachsen kann.

Ich benötige also ein Script, welches automatisch in allen vorhandenen Hauptordnern nach dem Ordner "Temp" sucht und NUR dort die Dateien löscht, die dem Namensmuster entsprechen UND die älter sind als X Tage sind.


Ich hoffe, ich habe mich verständlich genug ausgedrückt und jemand von euch hier weiss mir einen Rat bzw. hat vielleicht gar ein fertiges Script!?


Schöne Grüsse aus der sonnigen Schweiz!
Mitglied: Chris85
02.08.2012 um 14:59 Uhr
Hi,

schau dir doch mal das Tool "Delage32" an. Das sollte deine Anforderungen erfüllen. Du musst dann nur noch ein kleines Script schreiben, welches Delage ausführt.

Über den Taskplaner kannst du den Aufruf dann auch automatisieren.

Gruß

Chris
Bitte warten ..
Mitglied: bastla
02.08.2012, aktualisiert um 15:09 Uhr
Hallo Worlddiver und willkommen im Forum!

Zum Thema "Löschen alter Dateien" solltest Du ausreichend Hinweise (gerade auch hier im Forum finden), daher nur zum "Abklappern" der richtigen Ordner:
for /d %%i in ("D:\*") do for /d %%a in ("%%i\Temp\*") do echo Bearbeite "%%a"
bzw einfacher, wenn jeweils der gesamte "Temp"-Ordner inkl Unterordnern gemeint ist:
for /d %%i in ("D:\*") do if exist "%%i\Temp\" echo Bearbeite "%%i\Temp"
Grüße
bastla
Bitte warten ..
Mitglied: Worlddiver
02.08.2012 um 16:22 Uhr
Hallo Chris85 und bastla

Vielen Dank für eure schnellen Antworten.
Beides habe ich tatsächlich im Forum gefunden, konnte es aber nicht auf meine Bedürfnisse ummünzen.

So gelangte ich bei der Suche nach "Delage32" nur auf eine ungültige Website und ging davon aus, das Tool gibt's nicht mehr.
Und bastla's Lösung mit der doppelten Verschachtelung ist nun nochmals einen Schritt weiter, als was ich bereits gefunden hatte. Auf die Idee bin ich (leider) nicht gekommen.

Beides zusammen konnte ich nun auf meine Bedürfnisse anpassen.
So funktioniert nun genau, was ich wollte:

for /d %%i in (D:\Hauptordner\*) do for /d %%a in ("%%i\Temp\*") do delage32 "%%a\Name*.zip" 10
Bonusfrage:
Gäb's jetzt noch ne Möglichkeit, die ggf. dadurch entstandenen leeren Unterverzeichnisse zu entfernen?
Die Unterverzeichnisse können u.U. nochmals ein weiteres Unterverzeichnis enthalten. Sofern dieses auch leer ist, dürfen beide gelöscht werden.


Gruss
Worlddiver
Bitte warten ..
Mitglied: bastla
02.08.2012 um 21:06 Uhr
Hallo Worlddiver!

Soferne alle unterhalb von "Temp" liegenden leeren Unterverzeichnisse gelöscht werden sollen, dann etwa so:
for /d %%i in (D:\Hauptordner\*) do for /f "delims=" %%u in('dir /s/b/ad "%%i\Temp"^|sort /r') do echo rd "%%u" 2>nul
Erklärung dazu: Es werden sämtliche Unterverzeichnisse mit "dir /s/b/ad" ermittelt und absteigend sortiert - damit werden zuerst die längsten Pfade (= am tieftsten in der Struktur liegenden Verzeichnisse) verarbeitet, wobei der Löschbefehl "rd" ohne Zusatz nur löscht, wenn das Verzeichnis leer ist; ansonsten würde die Meldung
Das Verzeichnis ist nicht leer.
ausgegeben, was aber durch Umleitung des Fehlerkanals nach "nul" unterbunden wird.

Damit Du Dir das zunächst einmal ansehen kannst, steht vor dem "rd" noch ein "echo", wodurch der Löschbefehl nur angezeigt wird ...

Grüße
bastla
Bitte warten ..
Mitglied: Worlddiver
03.08.2012 um 08:15 Uhr
Hallo bastla

Perfekt! Dein Script macht genau, was es soll.
Vielen Dank für die schnelle Hilfe!


Schöne Grüsse aus der Schweiz
Worlddiver
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Alle Dateien in Verzeichnis und Unterverzeichnissen löschen, mit Ausnahme aller.txt-Dateien
gelöst Frage von tegwertBatch & Shell5 Kommentare

Hallo zusammen! Ich habe zum löschen aller Dateien in bestimmten Verzeichnissen und dessen Unterverzeichnissen folgende Batchzeile erstellt: Dabei muss ...

Batch & Shell
In Unterverzeichnissen alle Dateien mit Ausnahme der jeweils größten Datei löschen
gelöst Frage von schikopixBatch & Shell2 Kommentare

Liebe Experten, könnte mir jemand bei folgendem Problem mit einer Batchdatei helfen? Ich möchte aus einem Verzeichnis das mehrere ...

Batch & Shell
Bestimmte Dateien aus Unterverzeichnissen verschieben und restliche Ordner und Dateien löschen
Frage von evolutionBatch & Shell33 Kommentare

Hallo, ist es möglich per Batch oder PowerShell bestimmte Inhalte (Dateien) aus Ordnern in eine darunterliegende Ebene zu verschieben? ...

Batch & Shell
Kopieren von Dateien aus Unterverzeichnissen!
gelöst Frage von DeadseraphimBatch & Shell3 Kommentare

Hallo in die Runde, ich habe folgendes Problem: Im Verzeichnis: C:\Schriftverkehr befinden sich mehrere Unterverzeichnisse mit den Bezeichnungen: \Dokumentenklassen1 ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 102 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 1 TagSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 1 TagInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Windows Server
GPO nur für bestimmte Computer
Frage von Leo-leWindows Server13 Kommentare

Hallo Forum, gern würde ich ein Robocopy script per Bat an eine GPO hängen. Wichtig wäre aber dort der ...

Windows Server
KMS Facts for Client configuration
Frage von winlinWindows Server13 Kommentare

Hey Leute, wir haben in unserem Netz nun einen neuen KMS Server. Haben Bestands-VMs die noch nicht aktiviert sind. ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

Windows Tools
Software-Tool zum Entfernen von bösartigem Windows
Frage von emeriksWindows Tools11 Kommentare

Hi, siehe Betreff hat das jemals irgendjemand schonmal sinnvoll eingesetzt? (MRT) E.