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

Printed on: April 19, 2024 at 23:04 o'clock

Member: Friemler
Solution Friemler Jun 24, 2018 at 11:24:32 (UTC)
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
Member: colinardo
colinardo Jun 24, 2018 updated at 12:38:57 (UTC)
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
Member: AnMaMe
AnMaMe Jun 24, 2018 at 14:10:41 (UTC)
Goto Top
wow - das war schnell ge"friemelt" ;)
und funktionieren tut es auch. Herzlichen Dank.

Mit Sonntagsgrüßen
AnMaMe
Member: AnMaMe
AnMaMe Jun 24, 2018 at 14:30:17 (UTC)
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