Я использую следующий скрипт для копирования содержимого определенной папки с моего жесткого диска на USB-флешку.Поскольку содержимое папки может измениться, я использую псевдонимы.
Раньше сценарий работал идеально, но, поскольку мне приходилось вносить изменения в структуру папок, у меня теперь иногда есть псевдоним псевдонима (обход сценария, не буду вдаваться в подробности).
Проблема в том, что скрипт, по-видимому, конвертирует только первый уровень псевдонимов-папок, но если в псевдониме для папки есть псевдоним для файла, он копирует псевдоним файла.
Интересно, можно ли сказать сценарию рекурсивно пройти каждый уровень папки (т.е. каждый файл) и скопировать вместо него оригинальный файл?
Спасибо!
Питер
ps: примерная структура папок исходной папки:
псевдоним папки 1
alias of folder 1-1
alias of file a, alias of file b
псевдоним папки 2
alias of file c
--> first a dialogue
display notification "hello, get folder ready"
delay 5 --> allow time for the notification to trigger
set theDialogText to "choose source"
display dialog theDialogText
--> Result: {button returned:"OK"}
--> now computing
set the backupSource to (choose folder) as alias
set theDialogText to "choose destination"
display dialog theDialogText
--> Result: {button returned:"OK"}
set the backupDestination to (choose folder) as alias
display notification "maybe this takes a while..."
delay 6 --> allow time for the notification to trigger
--> now copy
tell application "Finder"
activate
with timeout of 600 seconds --> equeals 10 Minutes
set everyAlias to every item of folder backupSource
repeat with thisAlias in everyAlias
set originalFile to (original item of thisAlias)
duplicate originalFile to backupDestination
end repeat
end timeout
end tell
``````````
I feel that the the line "repeat thisAlias in everyAlias" doesn´t do its job and goes only one level down, ie it converts the alias on the first level and not all other aliases within this alias-folder