Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Musikstücke kopieren aus playlist

Frage Entwicklung Batch & Shell

Mitglied: pbelcl

pbelcl (Level 1) - Jetzt verbinden

02.05.2008, aktualisiert 04.05.2008, 3750 Aufrufe, 5 Kommentare

Hi Leute,

Ich habe eine Playliste die so aussieht:

01.
Z:\Musik\MP3 2007\Hitparade\Chicago Bulls - Theme Song.mp3 
02.
Z:\Musik\MP3 2007\Hitparade\MICHAEL JACKSON - Who is it.mp3 
03.
Z:\Musik\MP3 2007\Hitparade\Atomic Kitten - Whole again.mp3 
04.
Z:\Musik\MP3 2007\Hitparade\Celine Dion - Think Twice.mp3 
05.
Z:\Musik\MP3 2007\Hitparade\Don't be cruel1.mp3
Nun möchte ich per Batch die Files in einen anderen Ordner kopieren und habe begonnen mir dieses zu erstellen.
Die Dateien sollen den selben Dateinamen bekommen, aber z.B im Ordner "Z:\neue Files" befinden!

Leider komme ich nicht zurande aus meiner Playlist den Pfad von der Datei zu trennen um die Dateien in einen anderen Ordner zu kopieren.

Kann mir wer Starthilfe geben?
Mitglied: tacker
02.05.2008 um 16:16 Uhr
salü

um die dateinamen vom pfad zu trennen kannst du folgenden schnipsel verwenden!

01.
@echo off 
02.
FOR /F "tokens=5 delims=\" %%i in (playlist.txt) do echo.%%i>>playlist_neu.txt
musst einfach noch anstatt von playlist.txt und playlist_neu.txt entsprechend deine dateinamen eingeben! so werden einfach die dateinamen in ein neues textfile geschrieben, wobei du natürlich mit der variable %%i anderweitig weiterarbeiten kannst (copybefehl)

gruss tacker
Bitte warten ..
Mitglied: miniversum
02.05.2008 um 16:23 Uhr
Mit einer For-Schleife kanst du ja die Playlist einzeln durchlaufen udn eben diese Dateien ermitteln.
In der Hilfe zum for befehl kans tdu dan auch sehen wie du an die einzelnen Dateinamen herankommst. Hier ein Auszug (ziemlich am Ende der Hilfe):
01.
Zusätzlich wurde die Ersetzung von Verweisen auf FOR-Variablen erweitert. 
02.
Sie können jetzt folgende Syntax verwenden: 
03.
 
04.
    %~I         - Expandiert %I und entfernt alle umschließenden 
05.
                  Anführungszeichen ("). 
06.
    %~fI        - Expandiert %I zu einem vollständigen Dateinamen. 
07.
    %~dI        - Erzeugt nur den Laufwerkbuchstaben von %I. 
08.
    %~pI        - Erzeugt nur den Pfad von %I. 
09.
    %~nI        - Erzeugt nur den Dateinamen von %I. 
10.
    %~xI        - Erzeugt nur die Dateierweiterung von %I. 
11.
    %~sI        - Erzeugter Pfad enthält nur kurze Dateinamen. 
12.
    %~aI        - Erzeugt die Dateiattribute von %I. 
13.
    %~tI        - Erzeugt Datum und Zeit von %I. 
14.
    %~zI        - Erzeugt die Dateigröße von %I. 
15.
    %~$PATH:I   - Durchsucht die in der PATH-Umgebungsvariablen 
16.
                  angegebenen Verzeichnisse und expandiert die erste 
17.
                  gefundene Datei %I zu dem vollständigen Dateinamen. 
18.
                  Wenn der Name der Umgebungsvariablen nicht definiert 
19.
                  ist oder diese Datei bei der Suche nicht gefunden wurde, 
20.
                  wird dieser Parameter zu einer leeren Zeichenkette 
21.
                  expandiert.
Das ganze geht also einfach einfach, nach zuvor erstelltem Zielordner, z.B. so:
FOR /F "delims=" %%i in (Playlist.txt) do copy "%%i" "C:\Zielordner\%%~nxi"

PS: Solltest du damit rechnen dass die Dateinamen auch Umlaute enthalten könnten müßtest Du vorher noch die Codepage umschalten. Auch zu beachten wäre noch das je nach Programm mitdenen sie wie erstellt wurden einige Playlisten auch relative Pfade enthalten können.
Bitte warten ..
Mitglied: pbelcl
04.05.2008 um 07:42 Uhr
Danke für Eure Tips!

Hab die Zeile von miniversum verwendet:
> FOR /F "delims=" %%i in (Playlist.txt) do copy "%%i" "C:\Zielordner\%%~nxi"

und daraus folgendes gemacht
01.
@echo off 
02.
chcp 1252 
03.
 
04.
SET liste=meine_TOPHITS 
05.
SET LW=p:\mp3's 
06.
SET ZielPfad="P:\Mp3's\0 - Musik zusammenkopiert\%liste%\" 
07.
 
08.
if not exist %ZielPfad% md %ZielPfad% 
09.
FOR /F "delims=" %%i in (%liste%.m3u) do copy "%%i" %zielpfad%%%~nxi
Klappt im Grunde schon fast außer dass ich wieder mal das Anführungszeichen Problem habe!!
Die Anführungszeichen die in der Variable %Zielpfad% drinnen sind zerstören in der FOR Schleife den Ausgabepfad!

Ich weiß daß ich dieses Problem mit eine kleinen copybatch lösen könnte den ich in der Schleife aufrufe, aber bevor ich mir darüber den Kopf zerbrechen mal die Frage:
Gibt es einen einfacheren Weg die Anführungszeichen aus der Variablen rauszubekommen?

%~zielpfad% hab ich probiert der hilft nix
Bitte warten ..
Mitglied: miniversum
04.05.2008 um 10:05 Uhr
Eigentlich müßte es so funktionieren. Ich denke da kommen eher Probleme wegen Leerzeichen im Dateinamen zum tragen.

Aber wenn du den Zielpfad ohne Anführungszeichen willst dann gehts auch so:
01.
@echo off & setlocal 
02.
chcp 1252 
03.
 
04.
SET liste=meine_TOPHITS 
05.
SET LW=p:\mp3's 
06.
SET "zielpfad=P:\Mp3's\0 - Musik zusammenkopiert\%liste%" 
07.
 
08.
if not exist %ZielPfad% md %ZielPfad% 
09.
FOR /F "delims=" %%i in (%liste%.m3u) do copy "%%i" "%zielpfad%\%%~nxi"
Bitte warten ..
Mitglied: pbelcl
04.05.2008 um 13:34 Uhr
Danke für den Hinweis, das " gleich nach dem SET Befehl hatte ich noch nicht ausprobiert!

SET "zielpfad=P:\Mp3's\0 - Musik zusammenkopiert\%liste%"

hat funktioniert.

Werde jetzt mal testen ob jetzt alles andere auch funktioniert, danke vorerst....
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst EXE Datei per GPO auf Desktop für alle User kopieren (8)

Frage von haiflosse zum Thema Windows Server ...

Batch & Shell
gelöst Daten via Aufgabenplanung auf ein SMB Ziel kopieren (8)

Frage von eBBeL87 zum Thema Batch & Shell ...

Batch & Shell
gelöst Verzeichniss überwachen Datei kopieren und umbenennen (6)

Frage von fischle63 zum Thema Batch & Shell ...

Windows XP
Remoteverbindung von Win10 auf WinXp lässt kein kopieren zu (3)

Frage von WinLiCLI zum Thema Windows XP ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (36)

Frage von Datsspeed zum Thema Exchange Server ...

Verschlüsselung & Zertifikate
Mit Veracrypt eine zweite interne (non-system) Festplatte verschlüsseln (10)

Frage von Bernulf zum Thema Verschlüsselung & Zertifikate ...

Internet Domänen
Nameserver ein Geist? (7)

Frage von zelamedia zum Thema Internet Domänen ...

Microsoft Office
Übertrag in eine andere Tabelle (6)

Frage von charmeur zum Thema Microsoft Office ...