C'est impossible.
Voici différentes manières de demander des fichiers. Il n'y a pas de méthode, en script pur Apple pour demander des fichiers ou Dossiers en même temps.
Sélectionnez le fichier :
set directory to POSIX path of (choose file with prompt "File Location:" default location (path to desktop))
Sélectionner les fichiers :
set directory to POSIX path of (choose file with prompt "File Location:" default location (path to desktop) with multiple selections allowed)
Sélectionner le dossier :
set directory to POSIX path of (choose folder with prompt "File Location:" default location (path to desktop))
Sélectionner les dossiers :
set directory to POSIX path of (choose folder with prompt "File Location:" default location (path to desktop) with multiple selections allowed)
Sélectionnez des types de fichiers spécifiques :
Demande d'un type de fichier spécifique
Si votre script nécessite des types de fichiers spécifiques pour le traitement, vous pouvez utiliser le paramètre optionnel of type de la commande choose file afin de fournir une liste des types acceptables. Les types peuvent être spécifiés comme chaînes d'extension sans le premier point (comme "jpg" ou "png") ou comme identificateurs de type uniformes (tels que "public.image" ou "com.apple.iwork.pages.sffpages"). Les listes 26-3 et 26-4 montrent comment demander une image.
Pour les images :
set directory to POSIX path of (choose file of type {"public.image"} with prompt "File Location:" default location (path to desktop) with multiple selections allowed)
Sources : Guide du script d'automatisation Mac
En utilisant AppleScriptObjC, vous pouvez demander soit des Fichiers, soit des Dossiers. Voir ce (si la réponse liée vous a aidé, merci de voter en faveur de la question et de la réponse liées) :
Non, vous ne pouvez pas le faire avec les verbes "choisir un fichier" ou "choisir un dossier", mais choisir un fichier ou (ou plusieurs fichiers/dossiers) est pris en charge. par le système sous-jacent NSOpenPanel
. Vous pouvez donc le faire avec AppleScriptObjC. Voici un exemple d'utilisation de [ASObjCRunner][1] (dérivé de [ici de [here][2]) :
script chooseFilesOrFolders
tell current application's NSOpenPanel's openPanel()
setTitle_("Choose Files or Folders") -- window title, default is "Open"
setPrompt_("Choose") -- button name, default is "Open"
setCanChooseFiles_(true)
setCanChooseDirectories_(true)
setAllowsMultipleSelection_(true) -- remove if you only want a single file/folder
get its runModal() as integer -- show the panel
if result is current application's NSFileHandlingPanelCancelButton then error number -128 -- cancelled
return URLs() as list
end tell
end script
tell application "ASObjC Runner"
activate
run the script {chooseFilesOrFolders} with response
end tell
ASObjCRunner convertit une NSArray
de NSURL
dans un liste AppleScript de file
les résultats peuvent ressembler à quelque chose comme :
{file "Macintosh HD:Users:nicholas:Desktop:fontconfig:", file "Macintosh HD:Users:nicholas:Desktop:form.pdf"}
[1] : http://www.macosxautomation.com/applescript/apps/runner.html
[2] : https://stackoverflow.com/questions/8125563/
Vous pourriez utiliser une boîte de dialogue invitant l'utilisateur à sélectionner ce qu'il souhaite chiffrer.
display dialog "Select a type to Encrypt" buttons {"File(s)", "Folder(s)"}
set a to the button returned of the result
if a is "File(s)" then
set directory to POSIX path of (choose file with prompt "File Location:" default location (path to desktop) with multiple selections allowed)
else
set directory to POSIX path of (choose folder with prompt "File Location:" default location (path to desktop) with multiple selections allowed)
end if
Enfin, regardez ma réponse aquí pour un moyen de crypter des fichiers avec Apple script et Automator.