Bilddateien in Unterordnern nach Ordnername umbenennen
Hallo zusammen,
ich habe folgende Ordnerstruktur mit vielen Fotos:
Ordner 1
OrdnerA
Files
bild1.jpg
bild2.jpg
bild3.jpg
OrdnerB
Files
bildA.jpg
bild2.jpg
Ordner 2
OrdnerC
Files
bild_.jpg
bild_2.jpg
OrdnerD
Files
bild_A.jpg
bild_B.jpg
Ordner 5
Ordner E
Files
bild1.jpg
bild2.jpg
Dabei sollen alle Ordner1....50 durchlaufen werden und alle Bilddateien nach den Ordnern A, B, C usw. umbenannt und jeweils durchnummeriert werden, z.B. OrdnerA_1.jpg, OrdnerA_2.jpg.
Der Ordner Files soll dabei ignoriert werden.
Bei der Suche bin ich auf mehrere Dateien in Unterordnern umbenennen gestoßen, was meinem Ziel schon am Nächsten kommt.
Könnt Ihr mir ein paar Tipps geben, wie ich das umbauen kann?
Viele Grüße Danke schon mal vorab.
Dackel
ich habe folgende Ordnerstruktur mit vielen Fotos:
Ordner 1
OrdnerA
Files
bild1.jpg
bild2.jpg
bild3.jpg
OrdnerB
Files
bildA.jpg
bild2.jpg
Ordner 2
OrdnerC
Files
bild_.jpg
bild_2.jpg
OrdnerD
Files
bild_A.jpg
bild_B.jpg
Ordner 5
Ordner E
Files
bild1.jpg
bild2.jpg
Dabei sollen alle Ordner1....50 durchlaufen werden und alle Bilddateien nach den Ordnern A, B, C usw. umbenannt und jeweils durchnummeriert werden, z.B. OrdnerA_1.jpg, OrdnerA_2.jpg.
Der Ordner Files soll dabei ignoriert werden.
Bei der Suche bin ich auf mehrere Dateien in Unterordnern umbenennen gestoßen, was meinem Ziel schon am Nächsten kommt.
Könnt Ihr mir ein paar Tipps geben, wie ich das umbauen kann?
Viele Grüße Danke schon mal vorab.
Dackel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 594168
Url: https://administrator.de/forum/bilddateien-in-unterordnern-nach-ordnername-umbenennen-594168.html
Ausgedruckt am: 12.04.2025 um 12:04 Uhr
8 Kommentare
Neuester Kommentar

Alles für den Dackel, alles für den Club 😁
@echo off &setlocal enabledelayedexpansion
set "quelle=d:\ordner"
for /d %%a in ("%quelle%\*") do (
for /d %%b in ("%%~a\*") do (
set cnt=1
for /f "delims=" %%c in ('dir /b /s /a-d "%%~b" 2^>nul') do (
ren "%%c" "%%~nxb_!cnt!%%~xc"
set /a cnt+=1
)
)
)

Sorry, das hab ich falsch dargestellt(Vorschau wäre hilfreich gewesen).
Wohl wahr ... Beim nächsten mal vor dem Abschicken die Vorschau benutzen!S. Anpassung oben.

Zitat von @Dackel:
Jetzt muss ich ihm nur noch beibringen für die Quelle auch UNC-Pfade zu akzeptieren.
Geht von Haus aus.Jetzt muss ich ihm nur noch beibringen für die Quelle auch UNC-Pfade zu akzeptieren.

Zitat von @Dackel:
Hallo Kleiber,
hab es gelöst, indem ich die Quelle durch.\ ersetzt habe. Die batch-Datei liegt dann im Hauptordner.
for /d %%a in (".\*") do (
Achtung das ist nicht zwingend der Skriptordner sondern das aktuelle Verzeichnis und das muss nicht zwingend das Skriptverzeichnis sein! Wenn du willst das zuverlässig der Skriptordner verwendet wird nutze stattdessenHallo Kleiber,
hab es gelöst, indem ich die Quelle durch.\ ersetzt habe. Die batch-Datei liegt dann im Hauptordner.
for /d %%a in (".\*") do (
for /d %%a in ("%~dp0*") do (