5 votes

Comment puis-je laisser AppleScript choisir n'importe quel type de fichier ?

Je suis en train de faire un script qui rend le cryptage des fichiers plus facile et à la portion de début j'ai ceci :

display dialog "Choose where your file is located."
set directory to POSIX path of (choose folder with prompt "File Location:" default location (path to desktop))
display dialog "Choose your file."
choose file with prompt "File Name:"
set filepath to result

Quand il demande un fichier, y a-t-il un autre moyen de faire en sorte qu'il puisse choisir n'importe quoi ? (Dossiers, images...)

5voto

Pirooz Points 486

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.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X