anmame
Goto Top

Dateien per script löschen, wenn kein identischer Name mit anderer Endung existiert

Hallo,

ich brauche Hilfe beim Programmieren (meine profunden FORTRAN IV-Kenntnisse helfen leider nicht weiter ;)
In einem Ordner sind viele Dateien - jeweils mit der Endung .jpg und .NEF.
Die JPEGs werden angeschaut und dabei teilweise gelöscht.
Ich brauche nun ein Script, dass einen Ordner durchsucht und alle Dateien mit der Endung .NEF löscht, zu denen in diesem Ordner keine Datei .jpg mehr existiert.

Von der Programmierlogik scheint es mir einfach, aber ich weiß nicht, wie ich es überhaupt anfangen soll.

Voller Hoffnung grüßt euch AnMaMe

Betriebssystem: Windows 10

Content-Key: 378132

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

Ausgedruckt am: 28.03.2024 um 13:03 Uhr

Mitglied: Friemler
Lösung Friemler 24.06.2018 um 13:24:32 Uhr
Goto Top
Hallo AnMaMe,

teste mal folgendes:
@echo off & setlocal

set "BasePath=.\Test"  

for %%a in ("%BasePath%\*.nef") do (  
  if not exist "%%~dpna.jpg" del "%%~a" > NUL  
)

In Zeile 3 musst Du den Pfad zum Verzeichnis mit Deinen Dateien eintragen.

Gruß
Friemler
Mitglied: colinardo
colinardo 24.06.2018 aktualisiert um 14:38:57 Uhr
Goto Top
Servus.
Oder auch schnell über die Powershell
gci 'd:\ordner' -Include *.nef | ?{!(Test-Path "$($_.DirectoryName)\$($_.Basename).jpg"))} | remove-item -force -verbose  
Grüße Uwe
Mitglied: AnMaMe
AnMaMe 24.06.2018 um 16:10:41 Uhr
Goto Top
wow - das war schnell ge"friemelt" ;)
und funktionieren tut es auch. Herzlichen Dank.

Mit Sonntagsgrüßen
AnMaMe
Mitglied: AnMaMe
AnMaMe 24.06.2018 um 16:30:17 Uhr
Goto Top
Danke schön - aber das ist mir (noch ;) zu "hoch".
Ich habe BatchDateien und Mini-VBScripte geschrieben und komme halbwegs mit Tasker (Android) zurecht.
Bei PowerShell weiß ich leider nicht mal, wie die Dateiendung der Kommandodatei heißen muss...

Aber ich finde es faszinierend, auf wie wenig Zeichen das Problem komprimiert werden kann face-smile
Gruß
AnMaMe