gelöst Batch älteste Datei in Verzeichnis löschen

Mitglied: madmad

madmad (Level 1) - Jetzt verbinden

05.01.2009, aktualisiert 12:25 Uhr, 24048 Aufrufe, 32 Kommentare

Ich suche eine Möglichkeit (Batch oder evtl. auch Konsolenprogramm) um die älteste Datei in einen Ordner zu löschen.
Bis jetzt bin ich nur auf sehr komplexe Lösungen gestoßen, aber es muss doch auch eine einfacher Lösung geben oder?

Vielen Dank
32 Antworten
Mitglied: bastla
05.01.2009 um 12:57 Uhr
Hallo madmad!

Etwa so:
Grüße
bastla
Bitte warten ..
Mitglied: madmad
05.01.2009 um 13:11 Uhr
ah danke sowas in der art habe ich gesucht.
währe es auch Möglich den Script so zu machen das er alle Datein löscht auser die %anzahl& neusten?

Gruß
Bitte warten ..
Mitglied: bastla
05.01.2009 um 13:43 Uhr
Hallo madmad!

Möglich wäre es - soll ich?
Grüße
bastla
Bitte warten ..
Mitglied: madmad
06.01.2009 um 10:23 Uhr
Hallo,

Super so habe ich mir das vorgestellt

Vielen Dank
Bitte warten ..
Mitglied: darex89
30.01.2009 um 10:25 Uhr
Hallo alle miteinander,

Ich bräuchte auch so eine batch datei und da bin ich auf diesen Thread gestoßen. Habe es gleich ausprobiert aber bei mir funktioniert das iwie nicht. Den Ordner habe ich im Script gewechselt, muss ich noch etwas wechseln?

schonmal Vielen Dank im Voraus.

Gruß,
Darex
Bitte warten ..
Mitglied: Biber
30.01.2009 um 11:20 Uhr
Moin Darex,

Habe es gleich ausprobiert aber bei mir funktioniert das iwie nicht.
Lässt sich dieses "iwie" noch iwie konkretisieren?

Kommt eine Fehlermeldung, fiept die Festplatte oder leuchtet eine gelbe LED?

Bitte gib am CMD-Prompt ein.
Ersetze dabei [Lw:\pfad\DateinameDeinesBätschelchens.cmd] durch den Dateinamen, den Du gewählt hast.
Poste das Ergebnis.

Danke
Biber
Bitte warten ..
Mitglied: darex89
30.01.2009 um 11:35 Uhr
Also wenn ich die Batchdatei dann starte öffnet er ganz kurz das Fenster und schließt es sofort wieder. man sieht es kaum so schnell geht das. Aber er löscht die Datei nicht.

Wo soll ich das eingeben? Ich stehe gerade ein bißchen auf dem schlauch.
Bitte warten ..
Mitglied: bastla
30.01.2009 um 12:05 Uhr
Hallo darex89!

Wo soll ich das eingeben?
Wenn
Bitte gib am CMD-Prompt ein.
nicht verständlich war: Eingabe direkt an der Kommandozeile (das, was Du über "Start / Ausführen /cmd" starten kannst und zum Testen von Batchen auch sollst) ...

Grüße
bastla
Bitte warten ..
Mitglied: darex89
30.01.2009 um 12:45 Uhr
so sorry wenn ich etwas auf dem Schlauch gestanden habe.
Er gibt mir folgendes aus:

del "P:\test\P_daten_09-01-22_0200.xml"/o-d "P:\test"') do echo del "P:\test\%i"

hoffe ihr könnt mir da helfen.

Gruß
Darex
Bitte warten ..
Mitglied: Biber
30.01.2009 um 18:07 Uhr
Moin darex89,

bezieht sich das "Er gibt mir folgendes aus:" auf meine Bitte
Type [Lw:\pfad\DateinameDeinesBätschelchens.cmd]
-oder auf -
[Lw:\pfad\DateinameDeinesBätschelchens.cmd]
???
Lass mich doch meine Anweisung zur Fehler-reproduktion diesmal eindeutiger formulieren:
  • Bitte gib am CMD-Prompt (drücke "Start"-"Ausführen", gib ein cmd und drücke ENTER)
  • gib ein Type [Lw:\pfad\DateinameDeinesBätschelchens.cmd] und drücke ENTER
  • gib ein [Lw:\pfad\DateinameDeinesBätschelchens.cmd] und drücke ENTER
  • Ersetze dabei [Lw:\pfad\DateinameDeinesBätschelchens.cmd] durch den Dateinamen, den Du gewählt hast.
  • Markiere die Bildschirmanzeige von oben links bis untern rechts mit optischen Zeigegerät und drücke ENTER
  • Poste das Ergebnis, in dem Du es als Textausgabe mit "Einfügen" oder "Strg-V" in einen weiteren Kommentar vervielfältigst.

Grüße
Biber
Bitte warten ..
Mitglied: TaxMax
02.02.2009 um 08:07 Uhr
Ich hatte dasselbe Problem. Ich kenne mich mit der Art von Programmmierung nicht aus. Bei mir hat es funktioniert, als ich in beiden Vorschlägen das "echo " einfach gelöscht hatte. Laut Wikipedia dient Echo nur zum Anzeigen. Die vorstehenden Dateien zeigen nur an, welche Befehel kreirt wurden, fürhren Sie aber nicht aus. Kann an Win XP SP 3 PRO (mein Betriebssystem) liegen, weiß ich aber nicht. Also einfach Echo und Leerzeichen (davor oder danach) löschen und schon klappt es ganz wunderbar. Ich bin zufrieden.
Bitte warten ..
Mitglied: bastla
02.02.2009 um 12:16 Uhr
@TaxMax
Kann an Win XP SP 3 PRO (mein Betriebssystem) liegen, weiß ich aber nicht.
Ich kann Dich beruhigen - es liegt nicht am Betriebssystem ...

... sondern: "it's not a bug, it's a feature" (und das sogar ernst gemeint ) - das "echo" soll ein gefahrloses Testen ermöglichen, indem die Löschbefehle nur angezeigt, aber nicht ausgeführt werden (was ansonsten eigentlich immer dabei steht).

Wenn's dann vernünftig aussieht, so, wie Du es ohnehin gemacht hast: "echo" entfernen und den Dingen ihren Lauf lassen ...

Grüße
bastla
Bitte warten ..
Mitglied: darex89
03.02.2009 um 08:23 Uhr
@Biber
sorry aber war am we nicht da. also ich habe das jetzt so gemacht wie du gesagt hattest und da gibt er mir folgendes:

P:\>Type P:\test\loeschung.cmd
@echo off & setlocal

set "Ordner=P:\test"

for /f "delims=" %%i in ('dir /b /a-d /o-d "%Ordner%"') do set "Alt=%Ordner%\%%i
"

del "%Alt%"/o-d "%Ordner%"') do echo del "%Ordner%\%%i"
P:\>P:\test\loeschung.cmd
Ungültige Option - "o-d".

P:\>

kannst du damit was anfangen?

@TaxMax + Bastla
Ich habe die beiden "echo"´s gelöscht aber iwie klappt es immer noch nicht, es passiert einfach nichts. DAs sieht jetzt so aus:

@echo off & setlocal

set "Ordner=P:\test"

for /f "delims=" %%i in ('dir /b /a-d /o-d "%Ordner%"') do set "Alt=%Ordner%\%%i"

del "%Alt%"/o-d "%Ordner%"') do del "%Ordner%\%%i"

Hoffe ihr könnt mir weiter hin helfen.
Bitte warten ..
Mitglied: bastla
03.02.2009 um 08:50 Uhr
Hallo darex89!

Sollte eigentlich so aussehen:
Grüße
bastla
Bitte warten ..
Mitglied: darex89
03.02.2009 um 09:20 Uhr
Ah Super! Danke bastla.

Jetzt klappt es. danke schön euch allen!

Gruß Darex
Bitte warten ..
Mitglied: TaxMax
03.02.2009 um 10:40 Uhr
@ Bastler

Ah, ja ein Feature. Mich hat es fast einen Tag gekostet. Da ich, wie gesagt, keine Ahnung habe, musste ich mich ganz langsam in die Problemlage einarbeiten. Gibt es noch mehr Standards, die keiner schreibt, die aber gewußt werden sollten, um zu vermeiden, dass das Rad ein weiteres Mal erfunden wird? Und gibt es vielleicht eine (für Ahnungslose geeignete) Zusammenstellung?

MadTax
Bitte warten ..
Mitglied: bastla
03.02.2009 um 10:44 Uhr
Hallo TexMex!
@ Bastler

Ah, ja ein Feature. Mich hat es fast einen Tag gekostet.
Sorry - ich kann mich, abgesehen von diesem Beispiel hier - nicht daran erinnern, die Funktion eines derartigen "echo" bei von mir geposteten Batches nicht (zumindest im selben Thread) erklärt zu haben; insofern ein typischer Fall von Pech ...

Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
29.07.2011 um 19:26 Uhr
Habe versucht mir aus den diversen Beiträgen eine Löschbatch zu schreiben - bekomme nur leider den Hinweis: "Parameterformat nicht korrekt"
Kann mir jemand sagen wo ich den Fehler eingebaut habe ??

set "Ordner=C:\Test\Sicherungen\Tag\"
set "Ordner2=B:\Sicherungen\Tag\"
set Anzahl=10
for /f "skip=%Anzahl% delims=" %%i in ('dir /b /a-d /o-d "%Ordner%"') do del "%Ordner%\%%i" >>%log%

if exist B:\Sicherungen\Tag\ goto :stick

:stick
for /f "skip=%Anzahl% delims=" %%i in ('dir /b /a-d /o-d "%Ordner2%"') do del "%Ordner2%\%%i" >>%log%

Gruß Klaus
Bitte warten ..
Mitglied: bastla
29.07.2011 um 19:45 Uhr
Hallo Klaus20!

Zum einen sehe ich nicht, dass %log% einen Wert erhielte, zum anderen gibt "del" ohnehin keine Daten aus, die in die Logdatei geschrieben werden könnten - allenfalls könntest Du eine zusätzliche Ausgabe erstellen:
Außerdem ist es nicht sinnvoll, die Pfadangaben (in den ersten beiden Zeilen) mit einem "\" abzuschließen.

Schließlich: Die Prüfung auf "B:\Sicherungen\Tag" sollte eher so aussehen:
Anstelle von "Batch-Ende" (:eof) kannst Du auch eine andere Sprungmarke angeben - in der derzeitigen Version ist es nämlich völlig egal, welches Ergebnis die Prüfung liefert, da auch ohne Sprung der Teil nach ":stick" ausgeführt wird.

Grüße
bastla

P.S. Bitte für das Posten von Batchschnipseln die passende Formatierung verwenden ...
Bitte warten ..
Mitglied: Klaus20
30.07.2011 um 09:18 Uhr
Hallo bastla,
vielen Dank für Deine Hilfe.
Habe momentan folgendes Phänomen.
Wenn ich loesch.bat im cmd Fenster laufen lasse bekomme ich keine Fehlermeldung.
Normalerweise lasse ich sie aber beim beenden eines 16bit Programmes (FoxPro) laufen und schon habe ich wieder die Fehlermeldung.
Alle anderen Sachen die in der Datei stehen werden einwandfrei ausgeführt
Prüfung ob Heute schon eine Sicherung erstellt wurde - Sicherung mit tzip - kopieren auf HDD und Stick - nur Löschen geht nicht.

Habe mir die Formatierungshilfe angesehen konnte Sie nur nicht umsetzen - gibt es eine Vorschau ??

Grüße Klaus
Bitte warten ..
Mitglied: bastla
30.07.2011 um 10:25 Uhr
Hallo Kalus20!

Vorschau gibt es - leider - nicht (mehr), aber es genügt, Code oder andere Inhalte, die möglichst unverändert dargestellt werden sollen, zwischen "<code>"- und "</code>"-Tags zu setzen.

Editieren kannst Du übrigens, bis der Beitrag geschlossen ist.
Hinsichtlich des (nicht gemeldeten) Fehlers habe ich leider keine Idee ...

Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
02.08.2011 um 17:02 Uhr
Bekomme immer noch folgende Meldung:
->C:\Test\Sicherungen\Tag\ %i konnte nicht gefunden werden
Syntaxfehler
Vielleich hat ja doch noch einer eine Idee woran es liegen kann. Wofür steht den "%%i" ??

Grüße Klaus
Bitte warten ..
Mitglied: bastla
02.08.2011 um 17:11 Uhr
Hallo Klaus20!
Wofür steht den "%%i" ??
In der Variablen %%i steht der Name jeder der gefundenen Dateien ...

Wenn Du kein "echo off" (und ggf am Ende zusätzlich eine Zeile mit "pause") verwendest, solltest Du ja den Ablauf der Schleife nachvollziehen können - wie sieht das denn da aus?

Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
02.08.2011 um 19:31 Uhr
Hallo bastla,
wieder mal vielen Dank für Deine Antwort.

Parameterformat nicht korrekt. - C:\Test\Sicherungen\Tag
C:\Test\Sicherungen\Tag\%i konnte nicht gefunden werden (obwohl ich im Testverzeichnis 15 Datein habe)

Grüße Klaus

P.S.: Entschuldigung für meine Fragen aber wie man sieht habe ich von "bätch" nicht so viel Ahnung.
Bitte warten ..
Mitglied: bastla
02.08.2011 um 19:42 Uhr
Hallo Klaus20!

Wenn Du Dich (vor der Schleife einfügen) mit den folgenden Befehlen testweise langsam "vorarbeitest":
kannst Du feststellen, ob etwas mit einem der Verzeichnisse nicht stimmt (darauf würde die Fehlermeldung hindeuten) und dieses zB (vorübergehend) umbenennen ...

Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
03.08.2011 um 10:44 Uhr
Hallo bastla,
egal was ich mache ich komme den Fehler nicht auf die Spur.
Habe folgendes herausgefunden:
1. Mit "Dir" wird alles korrekt angezeigt.
2. C:\Test\Sicherungen\Tag\%i konnte nicht gefunden werden ist nur bei C:\.. aber nicht beim Stick
3. Die Fehlermeldung "Parameterformat nicht korrekt" bekomme ich vom "Ordner" und vom "Ordner2"
4. Mit XP ist die Fehlermeldung auf Deutsch und unter Win7 ist sie auf Englisch.
5. Hast Du eine Ahnung ob die Befehle auch mit einer älteren Version (16bit) von Windows gehen ??
6. Ich rufe die bat Datei nähmlich aus einem 16bit Programm auf -
im cmd Fenster bekomme ich nur die Meldung von Punkt 2 ansonsten wird alles ausgeführt.

Hast Du eine Ahnung wie ich loesch.bat auf "alt" schreiben kann.

Grüße Klaus

P.S.: Mache es momentan mit DelAge32 %Ordner%\*.* 10 - es wurmt mich nur daß ich es mit Bordmitteln nicht hinbekomme.
Bitte warten ..
Mitglied: bastla
03.08.2011 um 11:44 Uhr
Hallo Klaus20!

Mit 2., 3. und der Frage nach "loesch.bat" kann ich nicht wirklich etwas anfangen ...

Zu 6.
Versuch es mit dem Aufruf per
Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
03.08.2011 um 12:28 Uhr
Hallo bastla,

zu 2. die Meldung bekomme ich nach Aufruf von for /f ... aber nur mit %Orner% und nicht mit %Ordner%
zu 3. die Meldung bekomme zum Abschluß von for /f ... von beiden Ordnern
zu loesch.bat - ich meinte damit eine bat Datei mit Befehlen die auch mit älteren Windows gehen.
Ich glaube die Ausführung klappt nich da ich die batch Datei von einem 16 bit Programm aufrufe.

Mit cmd /c C:\Batchdatei.bat klappt leider auch nicht

Gruß Klaus
Bitte warten ..
Mitglied: bastla
03.08.2011 um 13:30 Uhr
Hallo Klaus20!

Leider fällt mir jetzt wirklich nix Sinnvolles mehr ein - eröffne besser einen neuen Thread, sodass auch andere darauf aufmerksam werden und mitraten können ...

Grüße
bastla
Bitte warten ..
Mitglied: Klaus20
03.08.2011 um 13:33 Uhr
Hallo bastla,

erst mal vielen Dank für Deine Mühe.

Grüße Klaus
Bitte warten ..
Mitglied: Movecorn
22.08.2014 um 09:31 Uhr
Hallo Zusammen,

Der folgende Befehl Funktioniert einwandfrei!

@echo off & setlocal
set "Ordner=P:\test"
for /f "delims=" %%i in ('dir /b /a-d /o-d "%Ordner%"') do set "Alt=%Ordner%\%%i"
del "%Alt%"

Meine Frage ist:

Kann man in diese Schleife einen bestimmten Dateityp einbauen, sodass in einem Ornder nur z.B. .vmk Dateien gelöscht werden und .vbk Dateien außen vorgelassen werden.

Vielen Dank
Bitte warten ..
Mitglied: Biber
22.08.2014, aktualisiert um 15:34 Uhr
Moin Movecom,

du kannst ja - was auch der Normalfall ist - beim DIR-Befehl eine Wildcard-Pattern wie zB "*.vmk" angeben.
Wenn ich es unter Beibehaltung des Stils erweitere in dem Schnipsel, dann:
Ich habe noch eine kleine Erweiterung eingebaut - dein jetziger Schnipsel löscht zwar immer die älteste Datei (works as designed).
Allerdings würde er das auch tun, wenn die älteste Datei gleichzeitig die einzige ist - das wäre mir zu heiss bei einem unbeaufsichtigen Batch.

Grüße
Biber
Bitte warten ..
Heiß diskutierte Inhalte
Router & Routing
Lancom Router Site to Site Problem mit Außenstellen
gelöst mossoxFrageRouter & Routing26 Kommentare

Guten Tag zusammen, in der Hauptgeschäftsstelle nutzen wir einen Lancom 1781VA Router und haben i.d.R. zwei gleichzeitige IPSec Site ...

Netzwerke
Sporadische Ausfälle im gesamten Heimnetz
gelöst bilbo-dvdFrageNetzwerke23 Kommentare

Guten Morgen, ich habe einen Kabelanschluss bei Vodafone und mein Tarif wurde im März auf CableMax 1000 umgestellt. Ich ...

Apache Server
Wer installiert mir Jitsi-meet mit Stun- Turn-Server und wartet dies?
gelöst default-userFrageApache Server20 Kommentare

Nachdem ich mit der Audio- und Videoqualität der meisten angebotenen Videokonferenz-Lösungen nicht zufrieden bin, möchte ich einen eigenen Jitsi-meet-Server ...

Sicherheit
Sicherheit oder bessere Benutzbarkeit?
gelöst StefanKittelFrageSicherheit19 Kommentare

Hallo, ich habe eine Webanwendung programmiert und sehe mich nun mit einer Frage zur Benutzbarkeit konfrontiert. Bei der Anmeldung ...

Router & Routing
RDP nur im internen Netz möglich nicht aber per vpn?
einfach112FrageRouter & Routing18 Kommentare

Hallo zusammen. Beim Kunden habe ich einen Server mit VMWARE laufen. Darauf ein Windows Server 2016 Essentials als VM ...

Internet
Über meinen WAN ist lidl.de nicht ereichbar
gelöst NetGodFrageInternet16 Kommentare

Hallo zusammen, mit meinem DTAG-Anschluß ist derzeit kein Durchkommen zu www.lidl.de möglich. Zu den selben Zeitpunkten ist es aber ...

Ähnliche Inhalte
Batch & Shell

Batch Datei - Verzeichnis kopieren funktioniert nicht - nur Dateien

gelöst inspiratioFrageBatch & Shell12 Kommentare

Hallo zusammen, ich habe eine Batch Datei erstellt wo die Unterverzeichnisse von A nach B kopiert werden sollen: echo ...

Batch & Shell

Datei aus Verzeichnis auslesen?

gelöst freshman2017FrageBatch & Shell4 Kommentare

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

Batch & Shell

Batch-Skript um herauszufinden ob zugehörige Index-Datei im Verzeichnis existiert

DarkatohmFrageBatch & Shell3 Kommentare

Hallo zusammen, folgendes möchte ich herausfinden: In einem Verzeichnis (C:\Temp\Alle) liegen zu einem Beleg drei verschiedene Dateien: Beleg.pdf Beleg.jpl ...

Batch & Shell

Batch: Datei mit Datei durchsuchen

dergringo73FrageBatch & Shell5 Kommentare

Hallo Ich habe folgendes Script was ich nun verändern möchte. Kurz zum aktuellen Stand: In der Datei products.json sollen ...

Batch & Shell

Batch Datei Ordnerüberwachung

Phant0xFrageBatch & Shell1 Kommentar

Hallo zusammen, könntet ihr mir helfen eine Batch Datei zu schreiben, die einen bestimmten Ordner kontrolliert, ob sich Dateien ...

Batch & Shell

Batch Datei - Hilfe!

gelöst freshman2017FrageBatch & Shell4 Kommentare

Einen wunderschönen "Wahl"- Sonntag, ich habe wieder eine Frage; wer kann mir helfen? Ich habe eine Ausgangsdatei (.txt) mit ...

Neue Fragen
Administrator Magazin
11 | 2020 Virtualisierung ist aus der IT nicht mehr wegzudenken. In der November-Ausgabe des IT-Administrator Magazins dreht sich der Schwerpunkt um das Thema "Server- und Storage-Virtualisierung". Darin erfahren Sie, wie sich die Virtualisierungstechnologie entwickelt hat, welche Varianten es im Bereich Server und Speicher gibt und wie ...
Neue Beiträge
Neue Jobangebote
Server- und Storage-VirtualisierungServer- und Storage-VirtualisierungBerechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid Cloud