Bonjour,

Envoyé par
Bean-Flayers
modifier la partition de démarrage directement sur le bureau d'OS X en un double-clic
Si je comprends bien tu souhaites basculer entre des volumes de démarrage via une application.
Dans ce cas, voici un petit script qui utilise tout simplement la commande shell "bless" pour faire cette opération entre le volume 1 et 2.
A toi de changer les noms avec ceux de ta partition, et , éventuellement de supprimer le dialog de confirmation ou encore l'instruction de reboot immédiat.
Ce script te donne ainsi 2 exemples d'utilisation de "do shell script" :
1 2 3 4 5 6 7 8 9 10 11 12 13
| set BootA to "Mon_Volume1"
set BootB to "Mon_Volume2"
-- determine le volume de boot actuel et sélectionne l'autre pour redémarrer
if (boot volume of (system info)) = BootA then
set Prochain_boot to "/volumes/" & BootB
else
set Prochain_boot to "/volumes/" & BootA
end if
display dialog "Merci de confirmer le prochain démarrage sur " & Prochain_boot
-- change le volume de démarrage et redémarre immediatement
do shell script "bless -mount " & (quoted form of Prochain_boot) & " - setboot" with administrator privileges
do shell script "shutdown -r now" with administrator privileges |
Note : j'utilisais ce script sur Snow Leopard, mais je ne l'ai pas testé sur El Capitain. hors question de sécurité, il devrait fonctionner (El Capitain est plus verrouillé !)
Enfin, j'ajoute que la commande "do shell script" permet de récupérer le résultat de la commande shell exécutée. Par exemple :
set ma_response to do shell script "ls -la HD/Users/Moi/Desktop/ "
La variable ma_reponse contient le résultat de la commande shell (ici 'ls' pour lister les fichiers). Cette variable est de type texte dont on peut extraire les éléments Applescript comme les "paragraphes" (les lignes), les words (evident !), les items text (blocs séparés par certains caractères), ou encore les caractères eux-mêmes.
Si ta commande shell risque de produire une erreur shell, tu peux entourer ton appel d'un bloc "try" / "on error" / "end try" qui te permet de gérer l'erreur si il y en a.
Cordialement
Partager