Schalter für Erstellung von Ordnern nach ID-Tag

Forum zur Erstellung von Schaltern über den Befehlseditor
Antworten
scsippc
Beiträge: 3
Registriert: 6. Jan 2013 20:57
Betriebssystem: win7 ulti
Produkt: Dopus 10.2.0.0
Version DOpus: Pro

Schalter für Erstellung von Ordnern nach ID-Tag

Beitrag von scsippc » 6. Jan 2013 21:11

Hallo,

ist es möglich Ordner nach ID-Tag z.B. Interpret zu erstellen und alle .mp3 des selben Interpreten zu verschieben. :?:
Ich habe ca. 2GB gemischte Musik in einem Ornder und möchte sie sortieren, aber nicht von Hand.

Benutzeravatar
Kundal
Moderator
Beiträge: 1341
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter für Erstellung von Ordnern nach ID-Tag

Beitrag von Kundal » 7. Jan 2013 01:58

Dieser Schalter sollte für deine Zwecke geeignet sein. Er stammt aus der Schaltersammlung Umbenennen wo er im vierten Beitrag genauer erklärt ist. In der vierten Zeile des Codes kann der auf Id3-Tags basierende Pfad definiert werden. Das Beispiel verschiebt markierte MP3-Dateien nach Eigene Musik\Genre\Artist\Album\Tracknummer Titel.mp3. Das funktioniert auch in Flat View oder aus einer Dateisammlung heraus. Wenn alle deine Dateien sauber getagged sind kannst du mit diesem Schalter deine ganze Sammlung in einem Rutsch einheitlich umbenennen und in die gewünschte Ordnerstruktur verschieben.

Code: Alles auswählen

@noexpandenv
@runmode hide
@set OriginalSource={sourcepath$|noterm}
Rename FILEINFO FROM "*.mp3" TO "{alias|mymusic}\{mp3genre}\{mp3artist}\{mp3album}\{mp3track|#2} {mp3title}.mp3"
Copy MOVE * TO "%RENAME_TARGET%"
Go PATH ".." DUALPATH "%RENAME_TARGET%"
rmdir {$OriginalSource}

@script vbscript
Option Explicit

Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")

Dim Shell
Set Shell = CreateObject("WScript.Shell")

Dim EnvVars
Set EnvVars = Shell.Environment("PROCESS")
EnvVars("RENAME_TARGET") = "zzzzz:\"

Function Rename_GetNewName(strFileName, strFilePath, fIsFolder, strOldName, ByRef strNewName)

   ' Fix any double \ chars resulting from empty tags (e.g. no genre).
   ' If we don't do this, things can get confused about the destination path.

   strNewName = Replace(strNewName, "\\", "\")

   ' Set the %RENAME_TARGET% environment variable to the folder we're moving the file to.
   ' This can be used in the main command above to go to the folder.
   ' Note that we use "@noexpandenv" at the top of the command; if we didn't then %RENAME_TARGET%
   ' would be expanded *before* this script had run, which obviously would not work.

   EnvVars("RENAME_TARGET") = fs.GetParentFolderName(strNewName)

End Function

scsippc
Beiträge: 3
Registriert: 6. Jan 2013 20:57
Betriebssystem: win7 ulti
Produkt: Dopus 10.2.0.0
Version DOpus: Pro

Re: Schalter für Erstellung von Ordnern nach ID-Tag

Beitrag von scsippc » 8. Jan 2013 13:40

Vielen herzlichen Dank! Genau das habe ich gesucht. Hat mir sehr geholfen.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast