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 Mit Batch Datei Verzeichnis auslesen

Mitglied: Schully

Schully (Level 1) - Jetzt verbinden

16.02.2009, aktualisiert 12:53 Uhr, 25317 Aufrufe, 4 Kommentare

Hallo Forum,
ich möchte per Batch Datei ein bestimmtes Verzeichnis auf meinem PC auslesen und alle Dateien bis auf die drei jüngsten löschen.

Ich mache täglich eine Sicherung meines Webservers als Datum.zip Datei.
Jetzt möchte ich das eine Batch-Datei ein mal die Woche per Task gestartet wird
und dieses Verzeichnis ausliest und alles löscht was älter ist als drei Tage.

Ich bin für jede Hilfe Dankbar.
Gruß
Jürgen
Mitglied: Biber
17.02.2009 um 19:53 Uhr
Moin Schully,

über die Forumssuche nach "die ältesten x Dateien löschen" oder ähnlich müsstest Du auf vorsichtig ausgedrückt mehrere Batch-Beispiele für diese thematik kommen.

Die Strategie ist auch recht simpel:
  • lass dir über den DIR-Befehl mit Schalter /b wie billich und /o-d wie absteigend nach Datum eine Liste aller Dateien ausgeben
  • überspringe die ersten 3 Zeilen (die jüngsten Dateien)
  • hau wech den Rest.
Demo am CMD-Prompt:
01.
for /f "skip=3 delims=" %i in ('dir d:\temp\*.* /a-d /b /o-d') do @echo del "d:\temp\%~i"
Dient nur zu Demo, d.h. diese Zeile macht ein "@echo del [dateiname]" statt des "echten" DEL-Befehls.

Wie Du diese eine Zeile per Taskplaner startest, findest Du -vorsichtig ausgedrückt MEHRFACH mit einer Forumssuche über "Batch Taskplaner".

Grüße
Biber
P.S. Nicht böse sein für die Nicht-Rundum-sorglos-Fertiglösung, aber...
wer seine alle-bis-auf-die-jüngsten-drei-Dateien per taskplanergesteuertem Batch automatisch wegschrubbeln will, der sollte sich diese Zeile auch zusammenbraten und ggf. warten/anpassen können.
Bitte warten ..
Mitglied: Schully
18.02.2009 um 07:50 Uhr
Hallo Biber,

selbstverständlich bin ich nicht böse. Warum auch.
Selbstverständlich kann ich die Batch per Taskplaner aufrufen. Das ist doch klar.
Ich hatte halt keinen Ansatz wie ich an die zu löschenden Dateien komme.

Ich habe mit Batch-Programmierung so gut wie nie zu tun deshalb frage ich ja in einem Forum. Das Suchen brachte mich halt auch nicht weiter so stellte ich mal meine Frage allgemein.

Jetzt zu Deinem Ansatz mit der For-Schleife.
Skip=3 gibt an wie viele Dateien nicht gelöscht werden sollen aus dem Suchergebnis ('dir d:\temp\*.* /a-d /b /o-d') welches in %i steht.

Ich habe Das Skript (loeschen.bat) so angepasst. Es tut sich nichts! Die Datei startet und schließt sich sofort wieder. Nichts passiert.

@echo off

for /f "skip=3 delims=" %i in ('dir G:\A\*.* /a-d /b /o-d') do @echo del "G:\A\%~i"
:: Erst mal sehen was gelöscht werden würde
pause
:: Dann löschen
for /f "skip=3 delims=" %i in ('dir G:\A\*.* /a-d /b /o-d') do del "G:\A\%~i"
pause
Bitte warten ..
Mitglied: Biber
18.02.2009 um 10:08 Uhr
Moin Schully,

bitte taste Dich in folgenden drei Schritten an das Wunschergebnis heran.

1) Starte die Batchdatei bis zum letzten erfolgreichen Test vom CMD-Prompt und nicht via Doppelklick. Wie Du ja selbst festgestellt hast, kommst Du nie zu Ansätzen bei der Fehlerlokalisierung bei "Die Datei startet und schließt sich sofort wieder"
2) Ändere die "einfachen" Prozentzeichen vor den FOR-Laufvariablen (%i) in doppelte Prozentzeichen (%%i).
01.
for /f "skip=3 delims=" %%i in ('dir G:\A\*.* /a-d /b /o-d') do ( 
02.
                 echo del "G:\A\%%~i" 
03.
                 REM  Erst mal sehen was gelöscht werden würde 
04.
                 REM uncomment nach Test:: Dann löschen 
05.
                 REM uncomment nach Test:: del "G:\A\%%~i" 
06.
07.
pause
3) wenn Du mit dieser Datei sinnvolle Ergebnisse bekommst, dann mach die beiden Zeilen "REM uncomment nach Test:" scharf, indem Du genau diesen Text herauslöscht, lösche die beiden Zeilen darüber und das "Pause" am Ende und gut.

Die Codeformatierung ist u.a. in unseren FAQ beschrieben.

Grüße
Biber
Bitte warten ..
Mitglied: Schully
18.02.2009 um 12:32 Uhr
Hallo Biber,

vielen Dank für Deine Hilfe. Es funktioniert.
Ich bekomme nicht nur sinnvolle Ergebnisse sondern genau das was ich wollte.

Also noch mal vielen vielen Dank.

Gruß
Jürgen
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei aus Verzeichnis auslesen?
gelöst Frage von freshman2017Batch & Shell4 Kommentare

Hallo Ihr! Ich wollte mir gerade mit nachfolgendem Batch Befehl: alle darin befindlichen Bilder auflisten. Ausgabe: Wie kann ich ...

Batch & Shell

Batch Datei in zufälliges Verzeichnis navigieren

Frage von MarioBros778Batch & Shell4 Kommentare

Hey Leute, ich hätte da ein Frage: Ist es möglich mit einer cmd datei in ein zufälliges Verzeichnis zu ...

Batch & Shell

Batch-Datei soll überprüfen ob ein Verzeichnis vorhanden ist

gelöst Frage von synapsenstauBatch & Shell7 Kommentare

Moin, wie bringe ich bitte einer Batch-Datei bei, das sie "schaut" ob ein Verzeichnis vorhanden ist und wenn nicht ...

Batch & Shell

BATCH ini Datei Datei auslesen

gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 6 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 6 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Viren und Trojaner
Neue Avira Management Console Egosecure
Information von OSelbeck vor 1 TagViren und Trojaner1 Kommentar

Hallöchen zusammen, ich weiß nicht, wer von euch noch Avira einsetzt Wir haben ein paar Kunden Avira hatte ja ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
Frage von YellowcakeExchange Server15 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Datenschutz
Telematikinfrastruktur Erfahrungsaustausch
Frage von MOS6581Datenschutz12 Kommentare

Moin, unter meinen Kunden befinden sich auch einige Ärzte, welche sich künftig mit der Telematikinfrastruktur-Geschichte der Gematik herumärgern dürfen. ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...

Windows Server
Downgrade von Windows Server 2016 auf 2012 - Wie vorgehen?
Frage von EstefaniaWindows Server12 Kommentare

Guten Ich habe eine Frage an Erfahrene unter euch. Durch einen InPlace Upgrade wurde Windows Server 2012 auf die ...