Automator/Applescript: il execute le resultat de ma commande shell, au lieu de la stocker dans une variable |
Bienvenue invité ( Connexion | Inscription )
Automator/Applescript: il execute le resultat de ma commande shell, au lieu de la stocker dans une variable |
23 Oct 2019, 10:43
Message
#1
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 1 974 Inscrit : 17 Apr 2002 Lieu : Entre Nîmes et Montpellier Membre no 2 280 |
Bonjour
Voilà le probleme que cherche à resoudre : Avant de lancer une application, je veux verifier que les preferences de sécurité autorisent les applications de "tout le monde" et pas juste "l'appstore et developeur identifiés" Si c'est pas le cas, je veux changer ca avant de lancer mon appli. Je suis parti dans l'idée de faire un script automator, pour à la fin avoir une "application" facile à lancer (et avec une belle icone toussa) Donc ce que je veux faire c'est ca: Lancer la commande "spctl --status" Si le resultat contient "enabled" alors lancer la commande "sudo cpctl --master-disable" Lancer mon application Comme je veux que la commande sudo prompte l'utilisateur pour son password (et pas ouvre une fenetre bash) j'ai choisi d'utiliser un script Apple Script. (il y a peut etre mieux, tous les conseils sont les bienvenus) J'ai donc le script suivant: set x to do shell script "spctl --status" if (x contains "enabled") then do shell script "sudo spctl --master-disable" with administrator privilieges end if do shell script "lance mon appli" (je vous epagne la ligne de commande complete) Sauf que ca marche tres bien quand le status retourne "assesements enabled" : il me prompte pour mon password, et fait le sudo tout marche Mais quand je lance une seconde fois, et que cette fois le status renvoie "assesement disabled" le comportement n'est pas du tout le meme. Il ne passe meme pas dans mon if, et me prompte une erreur L'action "run applescript" a rencontré une erreur: "assesements disabled" (mon mac est an anglais, j'ai traduit, c'est peut etre pas exactement la meme chose avec un mac FR) Ca donne l'impression qu'il cherche a executer le resultat de ma variable au lieu de la stocker dans x Mais je ne comprend pas pourquoi ca fait pas la meme chose que le resutat de la commande status est "assesements enabled" Si une expert peut eclairer ma lanterne... Ce message a été modifié par djdoxy - 23 Oct 2019, 10:47. -------------------- Heureux switcher depuis le 18/02/2005 mais désormais apostat
iMac 27" Late 2015 Hackintosh Core i5 3.4Ghz sur P8Z77-V avec une RX580 sous Mac OS X Mojave |
|
|
Nous sommes le : 27th April 2024 - 10:39 |