Applesricpt, как переместить файлы в /Library/Caches

Я работаю над кодом Javascript, который позволяет пользователям настраивать фон экрана входа / изменения пользователя. В настоящее время я использую базовый пользовательский интерфейс AppleScript, но надеюсь реализовать более продвинутый пользовательский интерфейс AppleScript-objC, если это удастся. В настоящее время у меня возникают проблемы с перемещением изображения "ch_pic" в /library/Caches. Не могли бы вы помочь мне с этой проблемой.

set ch_pic to (choose file)

--Creates variables for paths


--Creates application folder in user library for storing assets and code

tell application "Finder"
move file ch_pic to Library / Caches
end tell

--Moves user selected file to application folder

set the name of file ch_pic to "com.apple.desktop.admin.png"

Если вы спросите, я внесу ваше имя в код готовой продукции.

1 ответ

Решение

Довольно просто, если вы просто выбираете, перемещаете и переименовываете файл. Просто нужно убедиться, что вы говорите в стиле PATH, который понимает Applescript.

Вот пример кода:

-- Set ch_pic to chosen file (restricting to only recognized "image" types)
set ch_pic to (choose file of type "public.image"))
tell application "Finder"
-- Set cache_folder to Caches destination (~/Library/Caches) as Applescript path (<hard drive name>:Users:<user name>:Library:Caches)
    set cache_folder to (((path to library folder from user domain as text) & "Caches"))
    -- Copy the file over
    copy file ch_pic to folder cache_folder
    -- Grab the full Applescript path of the newly placed file (two steps for clarity. 1: set the path. 2: explicitly inform Applescript that this is a file)
    set new_pic to ((cache_folder as text) & ":" & name of ch_pic)
    set pos_new_pic to (file new_pic)
    -- Perform the rename
    set the name of pos_new_pic to "com.apple.desktop.admin.png"
end tell
Другие вопросы по тегам