Coverbilder in Überverzeichnisse kopieren
Hallo,
ich habe eine Musiksammlung mit mehr als 2.000 Titeln.
Nun habe ich bei der App meines neuen Verstärkers festgestellt, dass in der App keine Coverbilder in den Überverzeichnissen angezeigt werden, sondern nur in den jeweiligen Verzeichnissen darunter.
Daher würde ich nun gerne je ein Coverbild in den jeweiligen Überordner kopieren, was händisch natürlich viel zu viel Arbeit ist.
Ich beschreibe hier mal kurz meine Verzeichnis-Struktur:
MUSIK > A - E > Künstler > Album
Bei der zweiten Ebene gibt es folgende weitere Verzeichnisse:
F - J
K - O
P - T
U - Z
Übertragen werden soll also jeweils die Datei "cover.jpg" aus der Ebene "Album" in die jeweilige Ebene darüber.
Natürlich steht dort nicht jeweils "Album", sondern der jeweilige Name des Albums.
Hier mal ein Beispiel:
MUSIK > A - E > AC-DC > Back in Black > cover.jpg
Gibt es eine Möglichkeit - z.B. mit einer Batch-Datei - die Coverdateien in allen Verzeichnissen in die nächsthöhere Ebene zu kopieren?
Danke und Grüße,
BN
ich habe eine Musiksammlung mit mehr als 2.000 Titeln.
Nun habe ich bei der App meines neuen Verstärkers festgestellt, dass in der App keine Coverbilder in den Überverzeichnissen angezeigt werden, sondern nur in den jeweiligen Verzeichnissen darunter.
Daher würde ich nun gerne je ein Coverbild in den jeweiligen Überordner kopieren, was händisch natürlich viel zu viel Arbeit ist.
Ich beschreibe hier mal kurz meine Verzeichnis-Struktur:
MUSIK > A - E > Künstler > Album
Bei der zweiten Ebene gibt es folgende weitere Verzeichnisse:
F - J
K - O
P - T
U - Z
Übertragen werden soll also jeweils die Datei "cover.jpg" aus der Ebene "Album" in die jeweilige Ebene darüber.
Natürlich steht dort nicht jeweils "Album", sondern der jeweilige Name des Albums.
Hier mal ein Beispiel:
MUSIK > A - E > AC-DC > Back in Black > cover.jpg
Gibt es eine Möglichkeit - z.B. mit einer Batch-Datei - die Coverdateien in allen Verzeichnissen in die nächsthöhere Ebene zu kopieren?
Danke und Grüße,
BN
Please also mark the comments that contributed to the solution of the article
Content-Key: 61774648107
Url: https://administrator.de/contentid/61774648107
Printed on: June 18, 2024 at 11:06 o'clock
15 Comments
Latest comment
Powershell
Batch (ins Root des Musikordners legen und starten)
Get-ChildItem -Path 'D:\Musik\*\*\*\cover.jpg' -File | copy-item -destination {"$($_.Directory.Parent.FullName)\$($_.Directory.Name).jpg"} -verbose
@echo off &setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b /s /a-d "%~dp0cover.jpg"') do (
set "folder=%%~dpa"
for /f "delims=" %%b in ("!folder:~0,-1!") do set "parent=%%~dpb" & set "album=%%~nxb.jpg"
copy "%%a" "!parent!!album!"
)
Danke und Grüße,
Bitte und Gruß
Das "a-d" hat nichts mit den Ordnernamen zu tun! Das ist eine Anweisung an den Dir-Befehl
keine Ordner sondern nur Dateien zu suchen (nur die cover.jpg's).
Kannst du hier nachlesen https://learn.microsoft.com/de-de/windows-server/administration/windows- ...
keine Ordner sondern nur Dateien zu suchen (nur die cover.jpg's).
Kannst du hier nachlesen https://learn.microsoft.com/de-de/windows-server/administration/windows- ...
Und... die Batch soll direkt im Verzeichnis "MUSIK" liegen?
Ja. Kann man aber auch feste Pfade hinterlegen wenn du das lieber willst, je nach Gusto ...@echo off
set "folder=D:\Musik"
powershell -EP Bypass -C "Get-ChildItem -Path '%folder%\*\*' -Directory | foreach {Get-ChildItem $_.Fullname -Recurse -include 'folder.jpg','cover.jpg' | select -First 1 | copy-item -destination {join-path $_.Directory.Parent.FullName 'cover.jpg'} -verbose}"
Tschüssikowski 🖖
Habe jetzt über die Windows Power Shell eine ".psi"-Datei erstellt mit dem folgenden Inhalt
Och nee, das ist doch ne Batch ...., siehst du doch an dem @echo off....Und "psi" liest du auf deinem Manometer 🤪nicht in PS.
Wenn du's Plain PowerShell haben willst dann so
Get-ChildItem -Path 'D:\Musik\*\*' -Directory | foreach {Get-ChildItem $_.Fullname -Recurse -include 'folder.jpg','cover.jpg' | select -First 1 | copy-item -destination {join-path $_.Directory.Parent.FullName 'cover.jpg'} -verbose}