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
Kommentar vom Moderator Biber am 17.03.2012 um 20:48:04 Uhr
Ich möchte mir deshalb eine Batch schreiben, die die MP3-Dateien in den Unterverzeichnissen umgebenennt,
Hmmm, mit Batch geht fast alles inklusive Brotschneiden....
Aber ob es auch zum Umgebenenntieren das richtige Werkzeug ist...?
Set /a rgc +=1
#801
GELÖST

Umbenennen von Dateinamen abhängig vom Verzeichnisnamen und Dateien verschieben

Frage Entwicklung Batch & Shell

Mitglied: steveXX

steveXX (Level 1) - Jetzt verbinden

17.03.2012, aktualisiert 20:48 Uhr, 4576 Aufrufe, 6 Kommentare

Ich habe meine Hörbuchsammlung in MP3 umgewandet, um sie komfortabel im Auto, auf dem MP3-Player und per Audiocenter zu hören.
Dabei ergibt sich leider ein Problem, das ich mit eurer Hilfe zu lösen hoffe.

Wie im Vorwort geschrieben haben ich meine Hörbuchsammlung in MP3 umgewandelt.
Die einzelnen Hörbücher befinden sich nun in einem Verzeichnis, das den Namen des Hörbuches trägt und sind in diesem noch einmal in Unterverzeichisse (CD01, CD02....) sortiert.

Leider kann meine gewünschte Abspielkombination (Fritzbox 7390 Mediacenter / 1&1 Audiocenter) nicht mit Unterverzeichnissen und auch nicht mit Playlists umgehen.

Ich möchte mir deshalb eine Batch schreiben, die die MP3-Dateien in den Unterverzeichnissen umgebenennt, indem sie den Dateinamen abhängig vom Unterverzeichnisnamen ein Prefix anhängt und die umbenannte Datei ins Hauptverzeichnis verschiebt.
Die Batch würde sich dabei im Hauptverzeichnis befinden oder - was mir noch besser gefallen würde -in einem übergeordneten Verzeichnis, in dem sich das Hörbuch -Hauptverzeichnis befindet.

Damit ihr besser versteht, was ich meine hier ein Beispiel, wie ich es mir vorstelle :

Ich hätte dann auf meiner Festplatte ein Verzeichnis "MP3s-umwandeln", in dem sich die Batch befindet.
In dieses kopiere ich zum Umbenennen nun das Hörbuch "Krimi1", das sich im Verzeichnis "Krimi1" befindet.
In dem kopierten Verzeichnis "Krimi1" befinden sich die Unterverzeichnisse CD01 bis CD15 und darin die MP3-Files.

Die Batch soll nun die MP3-Files der Reihe nach umbenennen und den Dateinamen entweder einfach den Verzeichnisnamen voranstellen - Aus dem MP3 "01-Vorwort.mp3" würde dann "CD01-01-Vorwort.mp3" - oder, was ich noch "schicker" fände, aus dem MP3 "01-Vorwort.mp3, das sich im Unterverzeichnis CD01 befindet würde "001-01-Vorwort.mp3".

Die umbenannten Dateien sollen dann aus den Unterverzeichnissen CD01 bis CD015 ins Hauptverzeichnis "Krimi1" verschoben werden.
Die leeren Unterverzeichnisse könnten dann noch vom Batch gelöscht werden, aber das kann ich zur Not auch noch selbst

Wie ließe sich dies unter Windows XP realisieren?


Viele Grüße
Steve
Mitglied: jsysde
17.03.2012 um 17:17 Uhr
Moin,

www.mp3tag.de - damit sollte sich das realisieren lassen.

Cheers,
jsysde
Bitte warten ..
Mitglied: bastla
17.03.2012 um 18:03 Uhr
Hallo steveXX und willkommen im Forum!

Wenn es jeweils nur eine Unterverzeichnisebene gibt und jeweils nur die letzte Stelle des Namens (also von "CD01" nur die "1") verwendet werden soll, dann (weitgehend ungetestet) etwa so:
01.
@echo off & setlocal 
02.
if #%1#==## echo Hauptverzeichnis auf Batchdatei ziehen! & pause & goto :eof 
03.
pushd %1 
04.
for /d %%i in (*) do call :ProcessDir "%%~nxi" 
05.
popd 
06.
goto :eof 
07.
 
08.
:ProcessDir 
09.
set "CDName=%~1" 
10.
set "Prefix=0%CDName:~-2%-" 
11.
for %%a in ("%~1\*.*") do move "%%a" "%Prefix%%%~nxa" 
12.
rd %1 
13.
goto :eof
Zur Verwendung: Einfach das Hauptverzeichnis (in Deinem Beispiel also "Krimi1") per Drag & Drop an den Batch übergeben. Es werden dann alle in den Unterordnern (nur 1. Ebene) befindlichen Dateien umbenannt und "nach oben" geholt. Wenn der Unterordner danach leer ist (was er eigentlich sein sollte), wird er gelöscht.

Grüße
bastla

P.S.: "Mp3tag" ist aber jedenfalls auch ein guter Vorschlag ...

[Edit] Präfix angepasst [/Edit]
Bitte warten ..
Mitglied: steveXX
17.03.2012 um 18:23 Uhr
@bastla
Vielen Dank für die schnelle Antwort und auch jsysde für seinen Tip!

Ich glaube, es reicht nicht, wenn nur die letzte Stelle des Namens (also von CD01 nur die 1) verwendet wird, denn dann würden Dateien aus den Verzeichnissen CD01, CD11, CD21 etc. dasselbe Prefix erhalten, oder mache ich da einen Denkfehler?

Wenn es in dem Fall in Ordner CD01 und CD11 jeweils ein File namens "Track01.mp3" gäbe, würden dann nicht beide denselben Namen erhalten bzw. das alte vom neuen File überschrieben werden, wenn die Files verschoben werden?

Viele Grüße
Steve
Bitte warten ..
Mitglied: bastla
17.03.2012 um 18:27 Uhr
Hallo steveXX!
Ich glaube, es reicht nicht, wenn nur die letzte Stelle des Namens (also von CD01 nur die 1) verwendet wird
Sorry, hatte Dein Beispiel zu ungenau gelesen ...

Ist jetzt oben angepasst (wobei die führende 0 konstant angegeben ist, da aus der CD-Nummer ja nur 2 Stellen zu extrahieren sind); sollte es aber doch 3-stellige CD-Nummern geben, dann
set "Prefix=%CDName:~-3%-" 
Grüße
bastla

[Edit]
Vorher hatte ich noch zugegeben:
Ich weiß ja nicht, wieviele CD zu einem Hörspiel gehören können
- fiel aber dann Tante Edith zum Opfer ...

@T-Mo
Wenn der Unterordner danach leer ist
Es werden ja derzeit alle Dateien verschoben (und daher auch auf zB "001-cover.jpg" umbenannt) ...
[/Edit]
Bitte warten ..
Mitglied: 60730
17.03.2012 um 18:29 Uhr
moin,

ein ganz alter Trick...

  • Lied/Titel 1 von Cd1 hat tracknummer 101
  • Lied/Titel 5 von Cd4 hat tracknummer 405

kannst du rel. einfach via mp3tag durchnudeln und solltest du auch - denn du musst auch die id3 tags anfassen, sonst sind das (in 85% der Fälle gertennte Alben - je nachdem - wo du die Infos versteckt) hast.

Und ID3 Tags via batch verhackstückeln ist viel aufwendiger, als sich mal eben schnell n Perl script zu zimmern.

Gruß
edit
Ich weiß ja nicht, wieviele CD zu einem Hörspiel gehören können
  • die meisten haben 6, manche aber auch mal 12 aber mehr als 12 hab selbst ich nicht.
von ausnahmen wie hui buh usw. mal abgesehen, aber das sind strenggenommen ja auch immer einzelne "bücher"
/edit
edit²
Wenn der Unterordner danach leer ist
hmmmmmmanchmal legt man sich da auch ne cover.jpg rein....
/edit²
Bitte warten ..
Mitglied: steveXX
17.03.2012 um 19:13 Uhr
@bastla

Vielen, Vielen Dank!

Das Script funktioniert hervorragend und tut genau das, was ich mir gewünscht habe!

Manche Hörbücher bestehen aus mehr als 20 CDs. Je nachdem, wie dick das Buch ist, das vorgelesen wird.
Hörspiele sind meist kürzer.
Hörbücher mit mehr als 99 CDs habe ich aber noch nicht gesehen und kann es mir auch nicht vorstellen

@timbeil

Du schriebst "- denn du musst auch die id3 tags anfassen, sonst sind das (in 85% der Fälle gertennte Alben - je nachdem - wo du die Infos versteckt) hast."

Hm, vielleicht hast du da höhere Ansprüche an die MP3-Dateien als ich. Ich habe die CDs mit dem Audiograbber nach MP3 umgewandelt und der hat ggf. die Informationen für die Tags über freedb geholt.
Der Audiograbber hat die Files beim Erstellen so benannt, dass sie aufgrund des Dateinamens in der richtigen Reihenfolge abgespielt werden.
Von daher reicht es mir, wenn dies nach dem Umbenennen und Verschieben aller MP3-Dateien in ein Verzeichnis nun wieder der Fall ist.
Vielleicht habe ich dich aber auch nur falsch verstanden

Auf jeden Fall nochmals an alle vielen Dank für eure Beiträge auf meine Frage und ganz besonders an bastla für sein Script!

Viele Grüße
Steve
Bitte warten ..
Neuester Wissensbeitrag
Festplatten, SSD, Raid

12TB written pro SSD in 2 Jahren mit RAID5 auf Hyper-VServer

Erfahrungsbericht von Lochkartenstanzer zum Thema Festplatten, SSD, Raid ...

Ähnliche Inhalte
Batch & Shell
gelöst Ordner anhand von Dateinamen erstellen und Dateien in Ordner kopieren (3)

Frage von getmoving zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateien automatisch anhand von 2 komplizierten Dateinamen-Strings verschieben (3)

Frage von cleverm zum Thema Batch & Shell ...

Batch & Shell
gelöst Verschieben und Umbenennen von Video-Dateien anhand der Nummer im Namen (3)

Frage von Foja.Filmer zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...