thanquol
Goto Top

Alle Dateien bist auf die letzten 2 löschen?

Hallo,

folgendes Problem:

Eine Applikation erstellt täglich (MO-FR) eine sicherung und legt diese auf unsrem Server ab!
Leider löscht die Applikation nicht selbstständig Sicherungen die Älter als X Tage sind...

kann ich ein kleines Script schreiben, welches mir in einem Ordner alle Dateien bist auf die beiden jüngsten löscht?


mittels DIR /b /OD kann ich mir ja alle Dateien anzeigen lassen, davon sollte der mir jetzt alle bis auf die ersten beiden löschen!


Bin für jeden Tip dankbar, da ich grad aufm Schlauch stehe!

Danke!
Flo

Content-ID: 76016

Url: https://administrator.de/contentid/76016

Ausgedruckt am: 18.11.2024 um 09:11 Uhr

58502
58502 14.12.2007 um 17:28:54 Uhr
Goto Top
Alle Dateien bist auf die letzten 2 löschen

davon sollte der mir jetzt alle bis auf die ersten beiden löschen!

Entscheiden solltest du dich schon, bevor dir jemand bei der Lösung hilft. face-wink
Thanquol
Thanquol 14.12.2007 um 17:33:16 Uhr
Goto Top
hmm hab ich wieder toll formuliert face-wink

Also:
Ordner
X Dateien
Lösche alle bist auf die beiden Jüngsten Dateien

Flo
bastla
bastla 14.12.2007 um 17:33:27 Uhr
Goto Top
Hallo Thanquol!

Etwa so:
@for /f "skip=2 delims=" %%i in ('dir \\Server\Share\ /b /o-d /a-d') do @echo del "%%~fi"  
Durch das "@echo" wird das Löschen nicht wirklich ausgeführt, sondern der Löschbefehl nur angezeigt.

Grüße
bastla
Biber
Biber 14.12.2007 um 17:39:46 Uhr
Goto Top
Moin Thanqoul,

Du hast bereits einen anderen Beitrag offen, wo Deine Rückmeldung aussteht.

Du kannst die Sortierung auch umdrehen und dann in der Tat alles außer den ersten beiden Zeilen bearbeiten.

Beispiel am CMD-Prompt:
for /f "skip=2 delims=" %i in ('dir /b /o-d *.*') do @echo del /y "%i"  

...wobei
  • das "@echo" nur zum Testen ist
  • natürlich eine Pfad-Angabe, eine Einschränkung "/A:-d" (nur Dateien, keine DIRs) und eine Wildcard-Eingrenzung statt meinem *.* beim DIR-Kommando sinnvoll erfolgen sollte.

Ähnliche Anforderungen findest Du übrigens über die Forumssuche schon bei "batch löschen".

Grüße
Biber
[Edit] @bastla
Sagt Dir unser aller Forums-Gebot "Do Not Overtake!" etwas? Und schon gar nicht "on the right side"... face-wink

Schönes Wochenende!
[/Edit]
bastla
bastla 14.12.2007 um 18:30:57 Uhr
Goto Top
@Biber
Gilt demnach das "Lex Fraenky" schon als "amendment" zu den Forenrichtlinien? face-wink

However, was soll ich denn dann machen - kein "overtaken", "undertaker" wäre auch nix für mich, also wohl am besten gleichfalls ein "Takeoff" in's Wochenende ...

Auf jeden Fall ein angenehmes selbiges auch Dir!
bastla
Thanquol
Thanquol 14.12.2007 um 22:31:05 Uhr
Goto Top
Ahoi!

keine sorge, ich hab den andren thread nicht vergessen! komme aber erst am Montag wenn ich in der Arbeit bin wieder zum ausprobieren!

Ich hab auf alle Fälle gute Ansätze mit denen ich weiterarbeiten kann am Montag!

Danke schonmal
Flo
Thanquol
Thanquol 17.12.2007 um 13:58:36 Uhr
Goto Top
Ahoi!

Vielen Dank, hiermit konnte ich mein Problem lösen! (Änderungswunsch des Kunden: nur das letzte Backup soll bleiben)

for /f "skip=1 delims=" %%i in ('dir "C:\ordner" /b /o-d') do del /F "C:\ordner\%%i"