Batch Ich benötige Unterstützung bei einer Batchdatei.

Klendathu

Cadet 3rd Year
Registriert
März 2017
Beiträge
45
Hallo Leute,

ich bräuchte vielleicht mal eure Hilfe. Ich verbessere gerade die Klangqualität meiner mp3 Sammlung. Die Software speichert alle bearbeiteten Dateien in einem einzelnen Ordner, ohne die Ordner und Dateistruktur des originalen Mp3 Ordners beizubehalten.

Das heißt, es sind dann alle mp3s in einem einzigen Ordner. Ich möchte sie nun aber gerne wieder, nach Bearbeitung, in den originalen mp3 Ordner zurückverschieben. Natürlich in die ursprünglichen Ordner, so dass zB. Techno im Technoordner landet, Klassik um Klassikordner usw.

Ich glaube, das könnte ich über eine Batch Datei am besten lösen. Aber ich kenne die richtigen Befehle nicht O_o

Kann mir da jemand behilflich sein, wie eine solche Batch Datei aussehen könnte?

Lg Klen
 
Hi,

Woher soll die Batch wissen, dass z.B. die Datei "Falco-RockMeAmA-01-04-2019.mp3" Techno ist?

BFF
 
  • Gefällt mir
Reaktionen: areiland
Das kannst Du nur dann haben, wenn Du die Dateien so kennzeichnest, daß eine maschinenverwertbare Zuordnung zur Musikrichtung (oder welchem Sortierkriterium auch immer) geschehen kann. Dein Rechner kann nicht erkennen, was für eine Musikrichtung die nullen und einser darstellen sollen.

Sonst: Klar, recht einfach machbar.

Nennst Du z.B. eine Datei Techno___wasauchimmer.mp3, dann kann man das auch verwerten. wasauchimmer.mp3 hilft dem Rechner jedoch nicht weiter.

Denkbar wäre natürlich auch eine "Datenbank" mit paarweiser Zuordnung.

Aber ganz ehrlich... Batch?
Ergänzung ()

Vorschlag, wenn WSL gewisse Voraussetzungen erfüllt:

Liste aller Dateien erstellen mit:
Code:
find "${Verzeichnis, in dem die Ordner mit Musikdateien sind}" -iname "*.mp3" -type f -fprint /${Pfad für das Script}/Dateien.lst;

Nach der Bearbeitung:
Code:
for DATEI in $(ls ${Pfad zu den geänderten Dateien}; do mv ${Pfad zu den geänderten Dateien}/${DATEI} $( cat /${Pfad für das script}/Dateien.lst | egrep "${DATEI}$" ); done

Das kann alles direkt ausgeführt werden. Bitte aber wie immer vorher selber testen. Kann sein, daß Dich mal wieder ein Leerzeichen besiegt.
 
Zuletzt bearbeitet: (cp durch mv ersetzt)
  • Gefällt mir
Reaktionen: BFF
Hey!

schon mal danke für antworten. ich glaube ich habe es nicht besonders gut erklärt^^

ich wollte nicht die files nach genres wir klassik und techno in ordner sortieren.

zb, ich habe eine band : aerosmith
und eine andere band: guns n roses
und eine andere band: Bon Jovi

jede band hat in dem mp3 ordner einen unterordner. wenn ich sie bearbeitet habe, landen ALLE mp3s aus sämtlichen Unteordnern in einem einzelnen Temp Ordner (zb. "c:\results\"

Dort sind dann alle mp3s, ohne ordnerstruktur in diesem einzelnen ordner.

jetzt sollen sie aber, mit identischen dateinamen die sie jetzt im vergleich zu den originalen haben, die sich aber in den alten unteordnern befinden, wieder an ihren ursprungsort zurückkehren und die noch nicht bearbeiteten mp3s überschreiben.


Lg Klen
 
Schon klar. Aber lies mal ganz genau unsere Antworten da oben.

Ist in den Dateinamen der MP3 irgendwas, was das Genre oder die Band oder den Saenger beschreibt?
Ohne dem ist nix mit Batch.

Warum arbeitest Du nicht einfach jede Band einzeln ab und kopierst per C/P zurueck?

BFF
 
  • Gefällt mir
Reaktionen: BFF
An für sich ginge das Verschieben schon auch mit Batch. Jedes Verzeichnis im alten Datensatz durchgehen, und über jede Datei die Datei mit dem selben Namen aus dem temp-Verzeichnis drüberkopieren.
Sollten vorher Dateinamen doppelt vorhanden gewesen sein, sind die bei der Bearbeitungsmethode ja eh flöten gegangen (Also von bspw. U2/One.mp3 und Johnny Cash/One.mp3 blieb ja nur eine Datei übrig, beim Überschreiben der Daten im alten Verzeichnis würde entsprechend ein Lied falsch überschrieben.)

Allerdings würde ich auch prüfen, ob es denn bei der Bearbeitungsweise nicht doch eine Möglichkeit gibt, die Verzeichnisstrutkur zu erhalten. Und für Dateinamen- und Metadatenverwaltung von Audiofiles ist Mp3Tag ganz grundsätzlich auch immer ein gutes Programm gewesen.
 
Hey!

Ja, die Dateinamen der bearbeitenen mp3s sind identisch mit denen der original mp3´s.
das heißt, mein original mp3 heißt "Summer of 69" und mein bearbeiteter mp3 heißt auch "Summer of 69".

Aber ich würde ja nun gerne, die Datei wieder in Ordner des Albums des Originalordners bekommen. und ihn überschreiben. Ich glaube, bis hier hin ist ja alles soweit klar.

Was WSL ist, weiß ich leider nicht :-( Ich benutze auch nicht Windows 10. Windows 7 läuft bei mir.

Lg
 
Dann könntest Du tatsächlich ein Problem bekommen, wie @simpsonsfan bereits schon beschrieb.
 
Statt zu versuchen die Unzulänglichkeiten deiner mp3-Software und/oder deiner Vorgehensweise mittels Batch, das dich offenbar vor ungeahnte Probleme stellt und dich min. 3 Threads dazu öffnen lässt, solltest du das eigentliche Problem angehen.

Wenn die von dir verwendete Software nur einen festen Ausgabe-Ordner hat, ist das vielleicht auch einfach nur ein mistiges Tool. Ich kenne das eher so dass der Output 1:1 im selben Ordner landet - ist bei mir aber zugegebenermaßen schon 15+ Jahre her.

Führt um das Tool kein Weg drumherum, solltest du dein Vorgehen ändern. Statt stupide auf den Knopf zu drücken und aaaaallllee mp3z gleichzeitig in c:\results zu packen und dann kompliziert mittels Batch und tagelangen Recherchen und seitenlangen Threads mehr Zeit in die Batch zu stecken als du gebraucht hättest, die dateien per Hand umzubenennen und umzukopieren, wandle ein Album nach den anderen um und sortiere die Dateien direkt weg. Das geht 10× schneller als blind in einer Batch rumzufummeln - zumal du dafür ja auch fremdes KnowHow und fremde Zeit in Anspruch nehmen musst.
 
  • Gefällt mir
Reaktionen: BFF und abcddcba
DAS ist die einzig richtige Antwort. Die Ursache beheben, nicht einen Workaround suchen in einer Sprache von der man faktisch keine Ahnung hat. Und in jedem 0815 Tool kann man heutzutage Zielordner auswählen. Man muss es nur tun und nicht immer die Defaults nutzen und stupide auf "weiter" klicken...
 
  • Gefällt mir
Reaktionen: simpsonsfan
Naja, fragen ist ja nicht verkehrt. Um das Problem einmalig zu lösen kann man das schon via Batch machen:
Code:
REM@echo off
set ALT=C:\Users\XX\Desktop\Neuer Ordner\alt
set temp=C:\Users\XX\Desktop\Neuer Ordner\temp

cd "%ALT%"
for /R %%I in (*) do copy /Y "%temp%\%%~nxI" "%%I"
Die Frage ist nur, ob für später ein Beheben der Ursache nicht einfacher wäre.
Und Achtung mit der Batch, die ist auf Überschreiben ohne Rückfrage (copy /Y) eingestellt.
 
Wieso immer Batch?

Für den Fall gibt es doch längst Tools.

https://www.mp3tag.de/

Batch Tag Bearbeitung Schreiben und Ändern von ID3v1.1, ID3v2.3, ID3v2.4, iTunes MP4, WMA, APEv2 Tags und Vorbis Comments in mehreren Dateien gleichzeitig.

Unterstützung für Album-Cover Herunterladen und Hinzufügen von Album-Covern zu Ihren Dateien.

Import von Discogs, freedb, MusicBrainz Sparen Sie sich das Abtippen und importieren Sie Tags aus Online-Datenbanken wie Discogs, freedb, MusicBrainz und weiteren.

Gruß
 
Es geht dem TE doch garnicht um die Meta-Tags, @isiprimax

BFF
 
Na mit dem Tool hab ich meine MP3 Sammlung in Ordnung gebracht. Umbenennen und in Ordner kopieren.
Dazu kann man sich die Albumdaten aus irgendeiner DB ziehen, dann ist das Genre meistens auch dabei oder aus den Dateinamen sich das Tag einlesen lassen und dann kann man sich Dateinamen- und Ordnerstruktur bauen, wie man das für sich möchte.

Und darum ging es doch?
 
isiprimax schrieb:
Und darum ging es doch?

Nein:
Klendathu schrieb:
Ich verbessere gerade die Klangqualität meiner mp3 Sammlung.

Wobei mir nicht ganz schlüssig ist, wie er die Klangqualität seiner mp3s verbessern will, aber das spielt hier keine Rolle.
 
Doch, im zweiten Schritt will er seine MP3 wieder sortieren, das Hauptanliegen aus Beitrag 1. Und dafür ist mp3tag geeignet.
Und er erkundigt sich wie Schritt 2 funktioniert, nicht Schritt 1.
 
Zurück
Oben