generale:
tell application "Finder"
make new folder at alias "Macintosh HD:Users:user:Desktop:" with properties {name:"Test Folder 2"}
copy file "Macintosh HD:Users:user:Desktop:Test Folder 1:test.doc" to folder "Macintosh HD:Users:user:Desktop:Test Folder 2"
end tell
È possibile aggiungere i nomi delle variabili che rappresentano i file POSIX e percorsi.
Ovviamente il carattere dei due punti (:) è un carattere riservato per i nomi di cartelle e file.
set desktopFolder to "Macintosh HD/Users/user/Desktop/"
set desktopFdrPosix to quoted form of POSIX path of desktopFolder
set newFolderName to "Test Folder 2"
set destinationFdrPosix to quoted form of desktopFdrPosix & POSIX file newFolderName
set sourceFilename to "Test Folder 1/test.doc"
set sourceFnPosix to quoted form of desktopFdrPosix & POSIX file sourceFilename
tell application "Finder"
make new folder at alias desktopFdrPosix with properties {name:newFolderName}
copy file sourceFnPosix to folder destinationFdrPosix
end tell
Si consiglia inoltre di aggiungere un controllo degli errori se la cartella di destinazione esiste già.
fonte
2009-05-26 06:57:20
Il suo bene di utilizzare questo metodo su quelli AppleScript causare a volte si potrebbe avere problemi di autorizzazione e usare in questo modo aiuta quindi. –
Gli svantaggi di questo sono: L'utente non vedrà una barra di avanzamento se la copia richiede più tempo. L'utente non può annullare, per lo stesso motivo. Supportare queste operazioni con un comando di shell sarà molto più difficile che lasciare che sia il Finder a farlo. Il lato negativo di Applescripting del Finder, però: se l'utente sceglie di utilizzare un'app di "Finder" sostitutiva, l'operazione di Applescript potrebbe non riuscire (non è sicuro, dipende probabilmente da quanto bene è stata scritta la sostituzione). –
Un altro vantaggio per l'utilizzo del Finder: se l'elemento di destinazione esiste, all'utente verrà chiesto di sostituire o meno. –