Mam niestandardową usługę, którą utworzyłem w Automater (korzystam z systemu OS X 10.6.5). Usługa wykonuje AppleScript, który z kolei wykonuje skrypt powłoki. Oto 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
Problem polega na tym, że ścieżka przekazana przez usługę (w zmiennej input
) wygląda następująco:
Macintosh HD:Users:Matthew:Documents:Programming:Apple Scripts:
Aby polecenie wykonało się poprawnie, ścieżka musi wyglądać następująco:
Macintosh\ HD/Users/Matthew/Documents/Programming/Apple\ Scripts/
Czy istnieje sposób na przetłumaczenie pierwszej ścieżki na drugą? Miałem nadzieję na podstawową funkcję, która to obsługuje. Ale przypuszczam, że zadziałałoby jakieś wyrażenie regularne / find / replace / etc? Znam HTML / CSS / JavaScript / PHP, a nie Cocoa / AppleScript / C. Wszelkie wskazówki lub sugestie byłyby świetne!
źródło
/
początku ścieżki jest wolumin rozruchowy. Inne dyski twarde są/Volumes/