Ich habe einen benutzerdefinierten Dienst, den ich in Automater erstellt habe (ich bin unter OS X 10.6.5). Der Dienst führt ein AppleScript aus, das wiederum ein Shell-Skript ausführt. Hier ist das AppleScript:
on run {input, parameters}
-- do shell script "/usr/bin/find " & input & " -type f -name .DS_Store -delete -print"
display alert "Path: " & input
end run
Das Problem ist, dass der vom Dienst (in der Variablen input
) übergebene Pfad wie folgt aussieht:
Macintosh HD:Users:Matthew:Documents:Programming:Apple Scripts:
Damit der Befehl ordnungsgemäß ausgeführt werden kann, muss der Pfad wie folgt aussehen:
Macintosh\ HD/Users/Matthew/Documents/Programming/Apple\ Scripts/
Gibt es also eine Möglichkeit, den ersten Pfad in den zweiten Pfad zu übersetzen? Ich hatte auf eine Kernfunktion gehofft, die dies erledigt. Aber ich nehme an, eine Art Regex / find / replace / etc würde funktionieren? Ich bin mit HTML / CSS / Javascript / PHP vertraut, nicht mit Cocoa / AppleScript / C. Jede Richtung oder Vorschläge wäre toll!
/
Anfang des Pfads steht das Startvolume. Andere Festplatten sind unter/Volumes/