Comment faire pour déclencher un pop-up de boîte de dialogue d'alerte à partir de la ligne de commande dans Mac OS

Avez-vous déjà souhaité faire apparaître une fenêtre d'alerte sur le Mac via le Terminal? Eh bien, il s'avère que vous pouvez avec la commande osascript toujours utile, ce qui permet l'exécution d'AppleScript à partir du terminal. Pour ceux qui passent beaucoup de temps sur la ligne de commande de MacOS, cela peut être une bonne astuce pour vous avertir quand une tâche spécifique est terminée, ou même pour être incluse dans un script. C'est en quelque sorte une approche visuelle de l'un de mes trucs simples du terminal, qui consiste à annoncer verbalement quand une tâche de ligne de commande est terminée.

Examinons comment les utilisateurs Mac avancés peuvent déclencher des boîtes de dialogue d'alerte dans l'interface graphique MacOS à partir de la ligne de commande. Vous pouvez choisir de spécifier une application de spécification pour déclencher l'apparition de l'alerte contextuelle, ou, mieux encore, déclencher une boîte de dialogue d'alerte quelle que soit l'application principale de Mac OS X.


Et oui cela fonctionne dans toutes les versions de mac OS ou Mac OS X qui existent, donc il ne devrait pas y avoir de problèmes de compatibilité ici.

Comment créer un pop-up d'alerte de dialogue dans Mac OS

Peut-être que l'alerte de dialogue la plus utile est celle qui est visible de n'importe où et est donc envoyée à ce qui est l'application la plus importante. Cela assure que la boîte d'alerte n'est pas manquée.

La syntaxe permettant de déclencher une boîte d'alerte de dialogue dans l'application la plus à l'avant sur le Mac est la suivante:

osascript -e 'tell application (path to frontmost application as text) to display dialog "Hello from osxdaily.com" buttons {"OK"} with icon stop'

La fenêtre d'alerte pop-up qui en résulte ressemble à ceci:

Par exemple, vous pouvez l'utiliser pour déclencher une boîte de dialogue dans l'application la plus à l'avant lorsqu'une tâche de la ligne de commande est terminée. Disons que nous exécutons un script python et que nous voulons une boîte d'alerte pour nous avertir quand elle est terminée, la syntaxe d'un tel cas d'utilisation pourrait ressembler à ceci:

python MagicScript.py && osascript -e 'tell application (path to frontmost application as text) to display dialog "The script has completed" buttons {"OK"} with icon caution'

Cet exemple déclencherait une boîte de dialogue indiquant que le script est terminé avec l'icône d'avertissement jaune sur l'application la plus en avant dans l'interface graphique de Mac OS X après que python a terminé l'exécution de 'MagicScript.py'. Vous pouvez choisir d'autres icônes comme stop, note, attention, ou même spécifier un chemin vers une icône personnalisée si vous le souhaitez.

Bien que vous puissiez spécifier une application, des événements système ou SystemUIServer, le choix de l'application frontale la plus large permet à la fenêtre de dialogue d'alerte d'apparaître à l'écran, quelle que soit l'application au premier plan. Couvrons les alertes de dialogue déclencheur dans des applications spécifiques, puisque cela peut être souhaitable aussi bien.

Déclencher une alerte de boîte de dialogue dans une application spécifique

Pour envoyer une boîte de dialogue ou une alerte dans une application spécifique, spécifiez simplement le nom de l'application en question, comme ceci:

Déclenchement d'une boîte de dialogue d'alerte dans Mac OS Finder à l'aide de la ligne de commande:
osascript -e 'tell app "Finder" to display dialog "Hello from osxdaily.com"'

Déclenchement d'une boîte de dialogue d'alerte dans l'application Terminal via la ligne de commande:
osascript -e 'tell app "Terminal" to display dialog "Hello from osxdaily.com"'

Déclenchement d'une boîte de dialogue d'alerte dans Safari via la ligne de commande:
osascript -e 'tell app "Safari" to display dialog "Hello from osxdaily.com"'

Déclencher une boîte de dialogue d'alerte aux événements système à l'aide de la ligne de commande:
osascript -e 'tell app "System Events" to display dialog "Howdy Doo"'

Vous pouvez spécifier n'importe quelle application pour envoyer l'alerte de cette manière, mais pour beaucoup d'entre nous, les événements système les plus éloignés sont probablement les plus utiles.

Si un déclencheur de dialogue contextuel général est trop intrusif, vous pourriez apprécier d'envoyer des alertes au Centre de notifications sur Mac avec un notificateur de terminal, le notificateur terminal est une solution tierce qui permet aux messages de ligne de commande d'apparaître dans le Centre de notifications général de Mac OS Une option encore moins invasive serait de déclencher un badge de notification sur l'icône Terminal Dock bien que cela puisse être trop subtil pour de nombreux utilisateurs.

Quoi qu'il en soit, il s'agit d'une vue d'ensemble de base du déclenchement des boîtes de dialogue d'alerte visuelle dans l'interface graphique de Mac OS au moyen de la ligne de commande. Vous pouvez aller beaucoup plus loin si vous le souhaitez grâce à des utilisations plus complexes d'AppleScript et d'oscriptio, y compris les interactions avec la boîte de dialogue impactent la prochaine étape, mais cela approche un sujet plus complexe qui serait mieux servi dans son propre article. Les utilisateurs qui souhaitent en savoir plus sur les scripts avec AppleScript peuvent consulter la documentation fournie avec l'application Script Editor, qui est assez complète et détaillée.

Avoir des moyens intéressants d'utiliser cette astuce, ou connaître une autre méthode pour déclencher des boîtes de dialogue dans l'interface graphique de Mac OS à partir de la ligne de commande? Faites le nous savoir dans les commentaires.