Wie nur Ordner ohne Unterordner umbenennen?

Ein Ordner enthält ein Musikalbum. Der Ordner kann keinen oder mehr Unterordner haben. Ein Album, das in einem Ordner ist könnte also zum Beispiel 2 Unterordner haben, in denen CD1 und CD2 des Albums sind, vielleicht einen weiteren Ordner für Bilder, vielleicht weitere Ordner.

Wenn ich hiermit

_DIRECTORY
%artist% - %album% (%year%)

umbenenne, wird der / ein Unterornder umgenannt, falls sich einer oder mehr in dem umzubenennenden Ordner befinden.

Wie kann ich erreichen, daß immer nur der Hauptordner umbenannt wird und nie einer seiner Unterordner oder mehr?

Wenn die gezählte Ebene von oben wichtig ist, kannst auch einen absoluten Pfad nehmen:
c:\meinemusik\%artist% - %album% (%year%)

Vielen Dank!

Das kommt also in "Formatstring" 'rein.

Es ist nicht immer die gleiche Ebene von oben. Läßt sich einrichten, daß automatisch etwa immer der oberste Ordner eine Ebene, der das Album enthält, umgenannt wird?

Wenn du DISCNUMBER gefüllt hast, dann kannst du die zusätzliche Ebene trotzdem mit dem absoluten Pfadnamen erhalten.
Dann allerdings lautet der
Format String: c:\meinemusik\%artist% - %album% (%year%)[\CD %discnumber%]

Die eckigen Klammern wirken wie eine "Wenn"-Bedingung und die zusätzliche Ebene gibt es nur, wenn in DISCNUMBER auch was drin steht.

Vielen Dank.

Kriege ich gar nicht zum Funktionieren:

Da wird ein Unterordner umbenannt und zu dem angegebenen Pfad verschoben.

Im englischen Teil gibt es einen Thread, der mit einem ähnlichen Problem kämpfte:

or here

Vielen Dank für die Links und Auszüge.

Ich bin noch nicht ganz sicher zu verstehen, aber eine Lösung kann ich dem nicht entnehmen oder habe ich da etwas überlesen? Oder bedeutet das, es geht nicht?

Vielen Dank nochmals

ich meine, dass das grundlegende Problem ist, dass das OS nur die Ebenen an sich zählt, aber eben den Namen der Verzeichnisse nicht liest, also nichts von einem Album weiß.
Du müsstest jetzt also für dich herausfinden, welchen Regeln deine Dateiablage folgt.
Und dann könntest du jeden Einzelfall separat behandeln.
Hier z.B. ein Filter, der dir die Verschachtelungstiefe auswertet und entsprechende Dateien anzeigt:

"$add($len($regexp(%_path%,'[^\\]',)),1)" is 5
zeigt Dateien in Ebene 5 (oder so).
Einen Automatismus sehe ich nicht.

Vielen Dank für den Filter.

Ich verstehe noch nicht ganz, aber wie es scheint, geht gewünschtes also einfach nicht zu machen. Gesetzmäßigkeiten kann ich nicht erkennen.

Hätte gar nicht gedacht, daß das so schwer oder gar nicht zu erreichen ist. Wenn man einen relativen Pfad verwenden könnte / würde, müßte es doch eigentlich leicht umsetzbar sein, aber ich habe natürlich überhaupt keine Ahnung.

Aber ich könnte zumindest wohl einen bestimmten Ordner verwenden, den ich einzig zum Umbenennen verwende, in den also die Ornder mit den Alben verschoben werden, dann umbenannt und dann in den Zielordner, wenn ich das hier benutze:

c:\meinemusik%artist% - %album% (%year%)[\CD %discnumber%]

Wenn du dich vom nackten Dateinamen aus näherst, dann ist der sozusagen Ebene 0.
_directory ist der Name des aktuellen Verzeichnisses, also sozusagen Ebene 1.
_parten_directory ist der Name des Verzeichnisses, wo der aktuelle enthalten ist, also sozusagen Ebene 2
Mal heisst Ebene 1 "Bravo Hits"
Mal heisst Ebene 1 "CD1"
Was jetzt noch darüber kommen kann, ist völlig unbekannt.

Du kannst dich von der anderen Seite nähern:
Laufwerksbuchstabe:\MeineMusik\Künstler\album
Diese EInheitlichkeit würde ich zuerst herstellen.
Und dann nur noch die beiden Fälle mit Hilfe der Ermittlung der Schachtelungstiefe unterscheiden: gibt es noch CD1 bis CDx oder nicht?
Und für den Fall ohne CDx benennst du _DIRECTORY um und für mit CDx benennst du _PARENT_DIRECTORY um.

Es kann ja auch noch andere Ordner geben, als die, in denen CDs sind, etwa welche mit Bilddateien, auch welche, in denen noch anderes ist. Auch könnte ein Unterordner einen Unterordner enthalten.

Damit - c:\meinemusik%artist% - %album% (%year%)[\CD %discnumber%] - geht es wohl doch auch nicht.

Oder ich könnte feststellen, welcher Ordner Unterordner hätte, dann könnte ich wenigstens die, die keinen haben umbenennen, wie ich es bisher gemacht habe und müßte die mit Unterordnern manuell umbenennen. Aber wie kann ich herausfinden, welche Ordner keine Unterordner haben und alle erst öffnen zu müssen.

Da du immer eine von MP3tag gelesene und bearbeitbare Datei brauchst, sind die übrigen Dateien und Ordner erst mal egal.
Was du rausfinden müsstest:
welche Audio-Dateien liegen direkt im Album-Ordner? Für diese benennst du _DIRECTORY um.
welche Audio-Dateien liegen noch in einem Ordner unterhalb im Album-Ordner? Für diese benennst du _PARENT_DIRECTORY um.

Wenn ein Ordner umbenannt wird, gehen alle Objekte in diesem Ordner mit an den neuen Ort, auch weitere Ordner.
Wichtig ist die Distanz zwischen Audio-Datei und Album-Ordner

Dieses Feld gibt es bei der Aktion "Tag-Feld formatieren" nicht als verfügbares Feld.

Der Anwendungsfall ist mit den Bordmitteln von Mp3tag tatsächlich nicht so einfach zu lösen, Du hattest deswegen ja in der Vergangenheit auch schon ein paar Versuche unternommen.

Ja, glaube, das war eine andere Ausgangslage als diese hier, aber wohl gibt es Zusammenhänge / Ähnlichkeiten / Überschneidungen.

Dann versuche ich eben eine akzeptable Möglichkeit zu finden, die Ordner ohne Unterordner herauszufinden und nur die Mp3tag zuzufügen, dann umzubenennen und die, die mindestens einen Unterordner haben, manuell zu bearbeiten.