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