Сначала вы должны проверить, что remotePath
, который вы генерируете, действительно существует (например, добавив оператор log
, такой как log tWindow's remote items
и просмотрев в журнале событий редактора сценариев, смог ли он их получить) .
Если путь правильный, я думаю, проблема в том, что вы используете команду download
со ссылкой на объект списка (every remote item...
). В документации команда ожидает спецификатор одного элемента:
загрузить спецификатор: удаленный файл, удаленная папка, ярлык или URL для загрузки
Вот почему вам нужно перебирать предметы. Фрагмент ниже отлично работает для меня:
-- my settings for testing
set theHost to "ftp.fetchsoftworks.com"
set loginName to "anonymous"
set remotePath to "/example/"
set localStorage to ((path to home folder) as text) & "LOCALSTORAGE:1234567890:"
-- Connect to FTP
tell application "Fetch"
activate
set tWindow to make new transfer window at beginning with properties {hostname:theHost, username:loginName, initial folder:remotePath}
set localStorage to (localStorage as alias)
repeat with theItem in tWindow's remote items
try
download theItem to localStorage
end try
end repeat
close tWindow
quit
end tell