Batch Datenübertragung aus Playliste?

Manaplayer

Cadet 4th Year
Registriert
Juni 2017
Beiträge
105
Hallöchen Leute, vielleicht hat hierfür jemand eine Idee:
Ich habe eine grosse Datenbank an Spielmusik, jedes Lied in einem Ordner seines Systems und Spiel.
Nur wird nicht jedes Lied angehört, was man bei der kompletten Playliste auslesen kann. Nur wie?

Code:
for /f "skip=2" %%a in ('find "N64\Zelda Ocarina of time" %Playlist5%') do (echo %%a)

Die Ausgabe ist aber nur "N64\Zelda" - Klar könnte ich mit "tokens" die Ausgabe ändern, aber für jedes Lied oder
Ordnername mit unterschiedlich vielen Freistellen?
Wenn ich nur alleine mit find suche

Code:
find "N64\Ocarina of time" %Playlist5%

Bekomme ich die volle Ausgabe der Liednamen:
N64\Zelda Ocarina of time\Versteckspiel im Schloss.miniusf
N64\Zelda Ocarina of time\Waldtempel.miniusf
.................
Nur wie kann ich es umsetzen dass jede Ausgabe dann zum kopieren in das Zielverzeichnis umgesetzt wird?
 
Exemplarisch alle .mp3 aus einem Ordner auf Dateiebene auslesen:
Code:
@echo off
SET PFAD="C:\temp\N64\Zelda Ocarina of time"

for /f "delims=" %%i in ('dir %PFAD%\*.mp3 /b /o:N /s') do (
echo "%%i" 
)
pause

bzw. m3u-Playliste auslesen (dazu muss mit dem CD Befehl gearbeitet werden:
Code:
@echo off
SET PFAD=C:\temp\N64\Zelda Ocarina of time

cd %PFAD%
for /f "delims=" %%i in (Playlist.m3u) do (
echo "%%i"
)
pause
 
Zuletzt bearbeitet:
Sorry, nee, so einfach ist die Liste auch nicht - Hier ein Beispiel wie es dort aussieht:
#EXTINF:48,Legend of Zelda: Ocarina of Time - Zelda's Melodie
N64\Zelda Ocarina of time\Zelda's Melodie.miniusf
#EXTINF:80,Legend of Zelda: Ocarina of Time - Zora's Höhle
N64\Zelda Ocarina of time\Zora Höhle.miniusf
#EXTINF:66,Legend of Zelda: Ocarina of Time - Zwischengegner
N64\Zelda Ocarina of time\Zwischengegner.miniusf
#EXTINF:174,02 SEN UME1 (0001)
NDS\Golden Sun 3\02 SEN_UME1 (0001).mini2sf
#EXTINF:174,03 SEN UME2 (0002)
NDS\Golden Sun 3\03 SEN_UME2 (0002).mini2sf

Jedes System und Spiel hat seinen eigenen Ordner, aber in der Playliste ist nicht jedes Lied eingetragen,
darum soll jedes Lied einzeln aus der Playliste ausgelesen werden und in sein Eigenes Zeilverzeichnis übertragen werden.
Und das eigentliche Problem ist eben, dass in der For-Schleife die Datei Namen nur abgehackt ausgegeben werden.
Ergänzung ()

Ich habs geschafft!

Code:
cd /d %Quellverzeichnis%
for /f "skip=2 eol=? delims=?" %a in ('find "GBA\Final Fantasy tactics" %Playlist5%') do (copy /y "%Zielverzeichnis%\%a")

Der Trick mit der ganzzeiligen Ausgabe waren also die eol=? und delims=?
 
Zuletzt bearbeitet:
Zurück
Oben