AppleScript :: Comment passer des données depuis le Terminal vers un script AppleScript ?

SEScriptEditorXComment passer des données depuis le Terminal vers un script AppleScript ?

 Lancer un script Applescript depuis le Terminal nécessite l’utilisation de la commande « osascript » suivi du chemin vers le fichier Applescript comme ceci :

 (Ligne de commande à placer dans le terminal)

$ osascript ~/Desktop/mon_script.scpt

 (Le Script mon_Script.scpt est placé sur le bureau)

 Maintenant nous souhaitons envoyer à mon script le contenu d’une variable.

 La première étape consiste à créer cette variable unix comme ceci. La variable « var » contiendra le texte entre guillemets :

 $ var=$(echo « Mon nom est Mac »)

La transmission de la variable se fait toujours en plaçant la variable entre guillemet (pour le texte) et en plaçant un  symbole « $  » avant le nom de la variable comme ceci :

$ osascript ~/Desktop/mon-script.scpt "$var"

Les deux commandes peuvent être associées dans une seule commande en les séparant par un point virgule « ; » pour former la commande suivant :

$ var=$(echo "Mon nom est Mac"); osascript ~/Desktop/mon-script.scpt "$var"

La seconde partie consiste à créer le script AppleScript et de collecter le contenu de la variable qui est passée, la structure du script est la suivante :

on run argv
       repeat with i from 1 to count of argv
              tell application "Finder"
                      activate
                      display dialog (item i of argv)
               end tell
       end repeat
end run
 

Il s’explique ainsi. L’exécution du script s’appuie sur des arguments (on run argv). La ligne suivante boucle sur le nombre d’arguments fournis. 

Image 01

Ensuite, le code entre les commandes « tell » et « end tell » est exécuté avec chaque argument.

Dans l’exemple présenté le Finder affiche le texte passé en argument, celui stocké dans la variable « argv ».

Vous pouvez utiliser cette astuce pour réaliser des opérations sur les fichiers AppleScript tout en plaçant la commande dans un script Shell.

Henri Dominique Rapin

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s