Windows Explorer: jede 2. Datei markieren

Hallo

Kennt einer n Tool welches jede 2. oder 3. Datei markiert bzw. löscht in einem Ordner? Keine weiteren Kriterien.

MfG
Lilly

Moin, Lilly,

Kennt einer n Tool welches jede 2. oder 3. Datei markiert bzw.
löscht in einem Ordner?

leider nicht :frowning:

Keine weiteren Kriterien.

Dann sollte doch auch genügen, beliebig zu sortieren und dann die ersten 33 oder 50 von 100 Dateien zu löschen. Oder nicht?

Gruß Ralf

Das Problem dabei ist, dass die Dateien in dem Verzeichnis nicht unbedingt so liegen, wie du es dir anzeigen lässt (du kannst es ja beliebig sortieren lassen im Explorer).

Gibt es ein bestimmtes Kriterium, was die Dateien haben? Sind sie nummeriert? Dann könnte man z.B. im dateinamen nach einer Zahl die durch 3 teilbar ist schauen, oder eine bestimmte Dateiendung, oder ein bestimmtes Attribut (versteckt/schreibgeschützt)

Alternativ, wenn man die Dateien nach dem Namen sortiert und es jeweils die dritte Datei ist, könnte ich dir dafür sowas schnell programmieren, einfach per Mail melden.

Gruß

Hallo

Ja sie sind nummeriert (001.bmp, 002.bmp, etc). Es sind Frames eines Videos.
Also quasi 25 Bilder = 1 Sekunde.
Wenn ich ein GIF von 8 Sekunden machen will muss ich etliche Frames löschen weil es unnötig die Dateigröße aufbläht. Für ne komplexe fließende Animation brauch ich nur jedes zweite oder gar 3. Bild, für nicht flüssige Animationen auch nur jedes 8., 9., etc. Bild (meist nehm ich dann aber schon mit reduzierten Frames auf, so das ich hinterher nicht zuviele Bilder hab).

Ich kann es nach Name sortieren und im Explorer per Maus nen Auswahlrahmen eine Reihe runter ziehen.

Problem bei Windows 7, wenn ich die Reihe lösche rutscht der Rest auf die freien Plätze. Bei XP war das nicht so, da konnt ich so Reihe für Reihe löschen und hatte quasi dann jedes 2. oder 3. Bild gelöscht.

MfG
Lilly

Mit diesem Skript sollte es klappen:

  1. CMD starten über Start->Ausführen->cmd.exe /V:on
    (Das /V:on ist dabei wichtig!)

  2. In den Ordner mit den Fotos wechseln über den Befehl
    cd „X:\PFAD_ZU_DEM_ORDNER“
    Beispiel:
    cd „C:\Dokumente und Einstellungen\Benutzer\Desktop\Neuer Ordner“

  3. Diesesn Befehl ausführen:

    for /f „delims=: tokens=1*“ %i in (‚dir *.jpg /a-D /o-d /b^|findstr /n $‘) do @(set /a „x=%i % 2“)>nul & @if !x!==1 del „%j“

(Alles in einer Zeile, keine Zeilenumbrüche)

Dieses Skript löscht jede zweite Datei, wenn man jede dritte Datei usw. löschen will, muss man die zwei bei x=%i % 2 ändern in eine andere Zahl, zum Beispiel x=%i % 3 um jede dritte Datei zu löschen

Ich weiß jetzt nicht wie gut du dich mit der Kommandozeile auskennst, wenn du noch Probleme hast, sag Bescheid.

Habe das Skript auf einem Windows XP getestet

Gruß

2 Like

Hi

Woah nice, so hab ich mir das vorgestellt. ^^ (hab jpg durch bmp ersetzt :wink:)
Sowas muss es doch auch mit GUI geben.

Wenn ich die Zeile in nen Editor speicher und TXT in BAT umbenenne und in den Ordner mit den Bildern tu… löscht er dann auf Doppelklick immer jedes 2. Bild in diesem Ordner?

MfG
Lilly

Ach ja stimmt, du hast ja BMPs :-[

Ich habe es leider nicht hinbekommen als .bat, habe es auch mit cmd.exe /c versucht, ohne Erfolg, bin aber auch kein Spezialist für Batch.

Ansonsten habe ich noch einen Fehler entdeckt, du willst ja nicht jede x-te Datei löschen, sondern alles löschen außer der x-ten Datei, das geht hiermit:

for /f "delims=: tokens=1\*" %i in ('dir \*.bmp /a-D /o-d /b^|findstr /n $') do @(set /a "x=%i % 3")\>nul & @if not !x!==0 del "%j"

PS: Ich kenne kein GUI-Tool, welches das unterstützt, aber könnte dir leicht sowas programmieren, falls du keine Angst vor Viren und ähnlichem hast :wink:

Gruß