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

Ordner mit verschiedenen Namen per Batchdatei löschen

Frage Entwicklung Batch & Shell

Mitglied: yakini

yakini (Level 1) - Jetzt verbinden

10.01.2013, aktualisiert 00:21 Uhr, 2439 Aufrufe, 4 Kommentare

Hi Zielgruppe...

ich habe ein kleines Problemchen mit einer Batchdatei, bzw. mir fehlt die richtige Idee.
Vielleicht kann jemand helfen.


Folgendes ist vorhanden:

Mehrere Überwachungskameras schreiben sekündlich ein Bild per FTP auf ein Laufwerk.

Bitte nicht über Sinn oder Unsinn dieser Verfahrensweise diskutieren, die ist wie sie ist und soll oder/und kann auch nicht verändert werden.

Es existiert eine Batchdatei, die die Fotos aus einem Ordner in mehrere Ordner sortiert. Sortiert wird nach Kameraname und Datum. Es existiert also danach für jeden Tag ein Ordner, der z.B. 2013-01-09 heißt.
In einem zweiten Schritt werden die Bilder, die älter als vier Tage sind per Batch mit einem kleinem Programm (delage) gelöscht.

Übrig bleiben dann leere Ordner für jeden Tag.

Gesucht wird eine Lösung, die in meine Batchs passt, die nicht nur die Dateien löscht, die älter als vier tage sind, sondern auch die danach leeren Ordner.

Bin für jede Idee dankbar, auch wenn sich noch anders in den Batchs verändern lässt.

Hier meine Batchdateien:

sortierbatch


set "Quelle=E:\cams\camsilver"

set "Ziel=E:\cams\nach_datum\camsilver"

set "Typ=.jpg"

set "Datum=%date%"

for /f "tokens=1-3 delims=." %%a in ("%Datum%") do set "ZielOrdner=%Ziel%\%%c-%%b-%%a"

md "%Zielordner%" 2>nul

pushd "%Quelle%"

for /f "tokens=1-3*" %%a in ('dir /a-d /tc *%Typ%^|findstr /i /e "\%Typ%"') do if "%%a"=="%Datum%" move "%%d" "%Zielordner%"


del /Q E:\cams\camsilver\*.*



set "Quelle=E:\cams\camblack"

set "Ziel=E:\cams\nach_datum\camblack"

set "Typ=.jpg"

set "Datum=%date%"

for /f "tokens=1-3 delims=." %%a in ("%Datum%") do set "ZielOrdner=%Ziel%\%%c-%%b-%%a"

md "%Zielordner%" 2>nul

pushd "%Quelle%"

for /f "tokens=1-3*" %%a in ('dir /a-d /tc *%Typ%^|findstr /i /e "\%Typ%"') do if "%%a"=="%Datum%" move "%%d" "%Zielordner%"


del /Q E:\cams\camblack\*.*



set "Quelle=E:\cams\camviolett"

set "Ziel=E:\cams\nach_datum\camviolett"

set "Typ=.jpg"

set "Datum=%date%"

for /f "tokens=1-3 delims=." %%a in ("%Datum%") do set "ZielOrdner=%Ziel%\%%c-%%b-%%a"

md "%Zielordner%" 2>nul

pushd "%Quelle%"

for /f "tokens=1-3*" %%a in ('dir /a-d /tc *%Typ%^|findstr /i /e "\%Typ%"') do if "%%a"=="%Datum%" move "%%d" "%Zielordner%"

del / Q E:\cams\camviolett\*.*


popd
löschbatch

DelAge32 "E:\cams\nach_datum\camblack\*.*" 4 /recurse
DelAge32 "E:\cams\nach_datum\camsilver\*.*" 4 /recurse
DelAge32 "E:\cams\nach_datum\camviolett\*.*" 4 /recurse

danke schon mal für Ideen
Mitglied: bastla
10.01.2013 um 08:06 Uhr
Hallo yakini!

Was für "gestern" (also -1 Tage) funktioniert, wird auch für einen anderen Zeitraum anzupassen sein - und wenn Du dann das Datum mit dem Stichtag ermittelt hast, kannst Du in einer Schleife einfach mit "lss" oder "leq" vergleichen und das Löschen der Ordner ganz ohne "delage" (nämlich mit einem simplen "rd /s /q") durchführen ...

Grüße
bastla
Bitte warten ..
Mitglied: yakini
10.01.2013 um 18:12 Uhr
..kannst du mir mal eine Zeile als Beispiel schreiben? Ich seh irgendwie den Wald vor lauter Bäumen nicht...
Bitte warten ..
Mitglied: bastla
10.01.2013, aktualisiert um 18:21 Uhr
Hallo yakini!

Etwa so:
01.
echo WScript.Echo DateAdd("d",-4, Date())>%temp%\Vor4Tagen.vbs 
02.
for /f "tokens=1-3 delims=." %%a in ('cscript //nologo %temp%\Vor4Tagen.vbs') do set "DatumAlt=%%c-%%b-%%a" 
03.
echo %DatumAlt%
Grüße
bastla

[Edit] Da Du schon die Variable %Datum% verwendest, auf %DatumAlt% geändert [/Edit]
Bitte warten ..
Mitglied: yakini
10.01.2013 um 18:36 Uhr
..es dämmert.... werd nachher gleich anpassen und testen...

danke
Bitte warten ..
Ähnliche Inhalte
Windows Server
Dateien in einem Ordner nach XY Tagen löschen (3)

Frage von Adnan88 zum Thema Windows Server ...

Debian
gelöst ISPCONFIG löschen. client-ordner lassen sich nicht löschen (3)

Frage von Moddry zum Thema Debian ...

Batch & Shell
gelöst Batchdatei für Aufgabenplanung zum Löschen von Backups (2)

Frage von Winuser zum Thema Batch & Shell ...

Batch & Shell
Ordner mit selben Namen verschieben (13)

Frage von 918103 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(4)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (41)

Frage von Datsspeed zum Thema Exchange Server ...

Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Off Topic
gelöst Fachzeitschriften als E-Book oder hardcoded? (11)

Frage von KowaKowalski zum Thema Off Topic ...

Windows 10
Windows Store Apps ohne Windows Store installieren (10)

Frage von keefien zum Thema Windows 10 ...