• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Itunes - Playlist mit Nummerierung exportieren

Lutzifer

Tokyo Rose
Registriert
05.01.08
Beiträge
66
Hallo,
Ich versuche gerade, das "Put this where i want it" Skript
Quelle: http://dougscripts.com/itunes/scripts/ss.php?sp=putthiswhereiwantit
dahingehend umzuschreiben, dass die exportierten Dateien als Präfix die Nummer innerhalb der Playlist (im Skript die variable "tc") erhalten.
Ich scheitere jedoch am umbenennen der Dateien (im Skript markiert mit ---???? )
Kann mir jemand helfen und mir sagen was ich an der Stelle am besten einfüge ?
Wie greife ich hier auf die NEU erstellte Datei im Ordner new_site zu ?

Danke im vorraus
Lutzifer

Code:
global tc
tell application "iTunes"
    if selection is not {} then
        set sel to a reference to selection
        set choose_folder_prompt to ("Select a folder to copy the selected tracks to...")
        set new_site to (choose folder with prompt choose_folder_prompt)
        if new_site is not false then
            set tc to 0
            with timeout of 30000 seconds
                repeat with f in sel
                    if f's class is file track then
                        set fpath to (get f's location)
                        tell me to move_it(fpath, new_site)
                    end if -- skip if incorrect type of track
                end repeat
            end timeout
        end if -- cancel from choose folder
    else
        display dialog fpath buttons {"Cancel"} default button 1 with icon 0
    end if -- no selection
end tell

to move_it(fpath, new_site)
    tell application "Finder"
        try
            duplicate file fpath to folder new_site with replacing
            set newName to (tc & (name of file fpath)) as Unicode text
            
-- ?????        

            set tc to tc + 1
        on error eM number eN
            display dialog "Error " & eN & return & eM with icon 2
        end try
    end tell
end move_it
 

schnydi

James Grieve
Registriert
08.01.06
Beiträge
137
Hallo

Wenn du eine Variable vor einen Befehl setzt, wird dessen Ergebnis in die Variable gespeichert, und diese kannst du dann zur weiteren Verarbeitung gleich nutzen.
Das ganze sieht dann etwa so aus:
Code:
set newFile to duplicate file fpath to folder new_site with replacing
set name of newFile to (tc & " " & (name of file fpath)) as Unicode text
Ach ja ich habe noch einen Leerschlag eingefügt nach der Nummer!
 

Lutzifer

Tokyo Rose
Registriert
05.01.08
Beiträge
66
Viel tausend dank.
Genau so hatte ich mir das gedacht, allein das AS-Vokabular hat mir gefehlt :)
 

Megaptera

Alkmene
Registriert
03.02.07
Beiträge
32
Hallo,
genau nach so ein Script wollte ich mir auch zusammenstellen ;) Da mein alter mp3-Player im Auto keine Playlisten unterstützt, möchte ich die Dateien aus einer iTunes Playlist, die einfach rauskopiert z.B. folgende Formatierung hätten:

blaa - blubb.mp3
blaaa- blub.mp3
17 - lala - bla.mp3
01 - lalala - blabla.mp3

automatisch umbenennnen in:

01 - blaa - blubb.mp3
02 - blaaa- blub.mp3
03 - lala - bla.mp3
04 - lalala - blabla.mp3

Dazu habe ich das o.g. Script bereits soweit angepasst, dass die Nummerierung mit "01" beginnt und zweistellig ist. Das funktioniert soweit sehr gut, aber wie im Beispiel oben sind in der Playlist auch Musikstücke aus Alben, die ich durchnummeriert habe und mit dem Script führt dies zu einer "Doppelnummerierung", also aus:

"17 - lala - bla.mp3" wird "03 - 17 - lala - bla.mp3" statt "03 - lala - bla.mp3"

wie kann ich eine Abfrage einbauen, ob der Dateiname am Anfang Zahlen enthält und diese dann für die Umbenennung aus dem Namen löschen? Sowas wie:
"wenn Dateiname mit 0 oder 1 oder 2 beginnt, lösche die ersten 5 Zeichen des Dateinamens" Dazu fehlt es mir wie meinem Vorgänger an Vokabular o_O

Viele Grüße
Simon

Code:
global tc
tell application "iTunes"
    if selection is not {} then
        set sel to a reference to selection
        set choose_folder_prompt to ("Ordner auswählen...")
        set new_site to (choose folder with prompt choose_folder_prompt)
        if new_site is not false then
            set tc to 1 -- Nummerierung soll bei 1 beginnen
            with timeout of 30000 seconds
                repeat with f in sel
                    if f's class is file track then
                        set fpath to (get f's location)
                        tell me to move_it(fpath, new_site)
                    end if -- skip if incorrect type of track
                end repeat
            end timeout
        end if -- cancel from choose folder
    else
        display dialog fpath buttons {"Abbrechen"} default button 1 with icon 0
    end if -- no selection
end tell

to move_it(fpath, new_site)
    tell application "Finder"
        try
            set newFile to duplicate file fpath to folder new_site with replacing
            if tc is less than 10 then -- hier Abfrage für zweistellige Zahlen
                set name of newFile to ("0" & tc & " - " & (name of file fpath)) as Unicode text
            else
                set name of newFile to (tc & " - " & (name of file fpath)) as Unicode text
            end if
            set tc to tc + 1
        on error eM number eN
            display dialog "Fehler " & eN & return & eM with icon 2
        end try
    end tell
end move_it