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

Ordnernamen automatisch auslesen und in Batch-Datei integrieren ?

Frage Entwicklung Batch & Shell

Mitglied: Jamhead

Jamhead (Level 1) - Jetzt verbinden

02.07.2006, aktualisiert 21:33 Uhr, 16198 Aufrufe, 3 Kommentare

Hallo zusammen,

Ich gebs ja zu ich bin dem ganzen Bereich noch ziemlich neu aber auch die Tutorials helfen mir leider nicht weiter...vielleicht geht das was ich vorhabe auch garnicht (vielleicht ist es aber auch seeehreinfach *g*)..Aber nunmal der Reihe nach:

Ich habe eine Batch-Datei erstellt die mir aus einzelnen MP3-Ordnern eine Playlist erstellen soll. Diese habe ich über SendTo ins Kontextmenü eingebunden und das klappt auch wunderbar. Die Batch-Datei sieht folgendermaßen aus:

Pushd "%1"
chcp 1252
dir /b /o:n *.mp* *.ogg *.fla* *.ape *.aac *.wv *.wav > playlist.m3u


Das bedeutet also Wenn ich rechts auf AlbumXY klicke (Senden an>playlist.bat) werden die im Ordner AlbumXY befindlichen Mp3s in einer Playlist namens playlist.m3u zusammengefasst.
Leider heißt aber so logischerweise jede Playlist playlist.m3u

Ist es möglich den jeweiligen Ordnernamen als Titel für die Playlist zu nehmen ? Die Playlist soll also nicht mehr playlist.m3u sondern Ordnername.m3u heissen. Könnt ihr mir erklären wie ich das anstelle ?

Lieben Gruß
Philipp Rabe
Mitglied: Biber
02.07.2006 um 19:42 Uhr
Moin Jamhead,

das lässt sich hier leider nicht vermeiden, dass bei der Anzahl der Benutzer und der Fragen im Forum manche "passenden" Lösungen nicht so schnell wiedergefunden werden.
Auch unter Deiner Beitragsüberschrift wird möglicherweise der/die nächste mit der gleichen Anforderung nicht die Lösung bzw. die gleiche Frage vermuten.

Eine mögliche Lösung mit kurzer Herleitung.. (zum Nachturnen am CMD-Prompt):
...Ersetzen aller "\" in der Variablen %CD% durch Anführungszeichen-Komma-Anführungszeichen...
01.
D:\Dokumente und Einstellungen\All Users\Anwendungsdaten\Microsoft> 
02.
$cmd$for %i in ("%cd:\=","%") do @echo %i 
03.
"D:" 
04.
"Dokumente und Einstellungen" 
05.
"All Users" 
06.
"Anwendungsdaten" 
07.
"Microsoft"
...so bekomme ich das aktuelle Verzeichnis "zerlegt"...

Eingebaut in Dein Skript zum Beispiel so:
01.
::---snipp MakeNewPlaylist.bat 
02.
@echo off & setlocal 
03.
Pushd "%1" 
04.
for %%i in ("%cd:\=","%") do set "MyPlaylist=~%%i.m3u" 
05.
Echo [Debug]: Playlist heisst: %Myplaylist% 
06.
chcp 1252 
07.
dir /b /o:n *.mp* *.ogg *.fla* *.ape *.aac *.wv *.wav >%MyPlayList% 
08.
::... 
09.
:: ..... 
10.
PopD 
11.
::---snapp MakeNewPlayList.bat
Hope It Helps
Biber
Bitte warten ..
Mitglied: Jamhead
02.07.2006 um 20:08 Uhr
Wunderbar!! Genau so klappt das. Und vorallem danke für die Herleitung...bin mittlerweile ganz begeistert was sich mit Batch-Dateien alles anfangen lässt. Und auch mal einen Dank an das gesamte Forum. Auch bei anderen problemen hat mir das Forum (auch ohne registriert zu sein) schon oft weitergeholfen. Im Vergleich zu anderen IT-Foren gibt es hier zum Glück recht wenig "Besserwisser" sondern Leute die einem gerne weiterhelfen!

Nochmals vielen Dank!
Bitte warten ..
Mitglied: Metzger-MCP
02.07.2006 um 21:33 Uhr
@ Batch

Ja so ist das mit den Batchdatein, das sind schon alllllte Viecher .
Die Biester sind schon soooooooooooo alt und trotzdem immer noch aktuell ,
und das schlimme daran ist, einiges wäre ohne Batch nicht lösbar, oder wenigstens
nur mit erheblichen Aufwand. Es gibt wirklich noch etwas das aus DOS stammt, das
nützlich ist und auch bei Windows bis dato überlebt hat. Batch reicht bis in die 80 zurück,
da wo 4MB Ram reinster Luxus war . Hoffe das bleibt noch lange so.

~~~~~~ tief an die vergangenden Tagen zurückdenkend verbleibe ich mit

Mfg Metzger
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...