Stapelautomatisierung mithilfe von Metadaten

422
Mr-RightHanded

Ich habe kürzlich einige Archivierungen zu persönlichen Zwecken in meiner Musikbibliothek durchgeführt, indem ich den Dateinamen extrahierte, um ein Textdokument mit Informationen zum Dateinamen zu machen. Ich dachte daran, Teile des Dateinamens zu analysieren, um den Interpreten oder das Lied zu wiederholen, aber die Dateinamen meiner Musikbibliothek sind nicht alle im gleichen Format. Also habe ich mich gefragt, ob ich die Metadaten stattdessen irgendwie wiederholen kann.

Hier ist mein Code soweit. Jede Hilfe und / oder Führung in die richtige Richtung wäre sehr dankbar.

@echo off for /r %%a in (*.mp3) do ( ( for %%b in ("%%~na") do echo ^Name of file: %%~b echo ^Artist: echo ^Song: echo ^Album: echo ^Comment: )>"%%~dpna.txt" )  

Ich würde es wirklich lieben, wenn der Kommentarbereich der Metadaten extrahiert werden könnte. Ich habe die Jahre damit verbracht, Alben Beschreibungen hinzuzufügen. Vielen Dank.

PS Kein Experte für die Programmierung. Ich habe nur ein paar Nachforschungen für die Dinge durchgeführt, die ich erreichen wollte.

1
Möchten Sie es tun, um etwas zu lernen? Ansonsten schauen Sie sich die verschiedenen verfügbaren "Music Library" -Tools an. Seth vor 6 Jahren 0
... wie zB ffprobe von FFMPEG grawity vor 6 Jahren 1
@Seth Ja, ich mache verschiedene verrückte Sachen, um meine Dateien zu archivieren. Und ich möchte die Flexibilität, etwas mit meiner oben genannten Agenda zu tun. Irgendeine Idee, wie ich die Metadaten einer Datei aufrufen könnte? Mr-RightHanded vor 6 Jahren 0
@grawity Danke für den Vorschlag. Klingt plausibel; Ich habe die Dokumentation gelesen. Das einzige Problem, dem ich jetzt gegenüberstehe, ist, dass ich nicht weiß, wie ich das in dem oben angegebenen Format wiederholen könnte. Mr-RightHanded vor 6 Jahren 0
Betrachten Sie zunächst keine Batch-Skripts. Für das, was Sie wollen, können sie ziemlich schrecklich sein. Erwägen Sie die Verwendung von PowerShell mit "Get-ChildItem" und führen Sie ffmpeg oder ein anderes Dienstprogramm aus, um die Metadaten als Text abzurufen. Danach können Sie diese Daten einfach wie gewünscht bearbeiten. Seth vor 6 Jahren 0
@Seth. Vielen Dank für Ihren Vorschlag. Wie kann ich das erreichen? Ich bin nicht so vertraut, wenn ich an Powershell arbeite, wie könnte ich es in einen Stapel integrieren? Wenn Sie die Dokumentation für ffprobe gelesen haben. Ich habe eine Lösung gefunden, um die notwendigen Details abzurufen. Aber ich weiß nicht, wie ich es in einem Batch-Skript wiederholen soll. Hier ist mein bisheriger Code: ffprobe -v error -show_entries format_tags = Titel, Interpret, Kommentar -of default = noprint_wrappers = 1: nokey = 1 input.mp4` Mr-RightHanded vor 6 Jahren 0
Nun, es hängt davon ab, was Sie tun möchten. Gleiches gilt in diesem Fall für PowerShell und Batch. Sie können den Befehl entweder dreimal ausführen und die Informationen nur für jeweils eine Option ausgeben lassen, oder Sie müssen die Ausgabe auf irgendeine Weise bearbeiten. Es ist wahrscheinlich, dass Sie die Ausgabe in einer Variablen speichern möchten, um sie nach einem späteren Ausführen des Programms auszugeben. Seth vor 6 Jahren 0
@Seth Die Ausgabe von drei verschiedenen Ergebnissen wäre wunderbar, aber dreimal auszuführen wäre nicht ideal, wie das, was Sie erwähnt haben. Ich werde eine Arbeit finden. Meine Frage ist jetzt. Wie kann ich das Ergebnis wiederholen oder diesen Befehl in einem Batch-Skript mit meinem oben genannten Format ausführen? Angenommen, ich möchte nur einen der drei Werte aus Titel, Künstler und Kommentar. Mr-RightHanded vor 6 Jahren 0

0 Antworten auf die Frage