Как вызвать всплывающее диалоговое окно с предупреждением из командной строки в Mac OS

Запуск диалогового окна с предупреждением из командной строки на Mac

Вы когда-нибудь хотели, чтобы вы могли сделать всплывающее диалоговое окно на Mac через Терминал? Что ж, оказывается, вы можете с помощью всегда полезной команды osascript, которая позволяет запускать AppleScript из Терминала. Для тех, кто проводит много времени в командной строке MacOS, это может быть отличным маленьким трюком, чтобы уведомить вас о завершении конкретной задачи или даже включить ее в сценарий. Это своего рода визуальный подход к одному из моих любимых простых приемов Терминала, который состоит в том, чтобы устно объявить о завершении задачи командной строки.

Давайте рассмотрим, как опытные пользователи Mac могут запускать диалоговые окна предупреждений в графическом интерфейсе MacOS из командной строки. Вы можете указать приложение со спецификациями, которое будет запускать всплывающее предупреждение, которое будет появляться внутри, или, что еще лучше, вызвать диалоговое окно с предупреждением в любом из основных приложений Mac OS X.


И да, это работает во всех версиях macOS или Mac OS X, которые существовали, поэтому здесь не должно быть никаких проблем с совместимостью.

Как сделать всплывающее диалоговое окно с предупреждением в Mac OS

Возможно, наиболее полезным диалоговым предупреждением является сообщение, которое видно из любого места и, следовательно, отправляется в любое главное приложение. Это гарантирует, что окно предупреждения не пропущено.

Синтаксис для запуска диалогового окна предупреждения в самом переднем приложении на Mac следующий:

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

В результате всплывающее окно с предупреждением выглядит следующим образом:

Запустить диалоговое окно Alet на Mac из командной строки

Например, вы можете использовать это, чтобы вызвать диалоговое окно в самом переднем приложении, когда задача в командной строке завершена. Предположим, мы запускаем скрипт python и хотим, чтобы окно предупреждения уведомляло нас о его завершении, синтаксис для такого варианта использования может выглядеть следующим образом:

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'

В этом примере после того, как python завершит выполнение MagicScript.py, откроется диалоговое окно с надписью «Сценарий завершен» с желтым значком предупреждения для главного приложения в графическом интерфейсе Mac OS X. Вы можете выбрать другие значки, такие как стоп, примечание, предупреждение, или даже указать путь к настраиваемому значку, если хотите.

Хотя вы можете указать приложение, системные события или SystemUIServer, выбор более широкого переднего приложения позволяет диалоговому окну предупреждений появляться на экране независимо от того, какое приложение находится на переднем плане. Давайте рассмотрим запуск диалоговых предупреждений в конкретных приложениях, поскольку это тоже может быть желательно.

Запуск диалогового окна с предупреждением в определенном приложении

Чтобы отправить диалоговое окно или предупреждение в конкретное приложение, просто укажите имя соответствующего приложения, например:

Запуск диалогового окна предупреждения в Mac OS Finder с помощью командной строки:
osascript -e 'tell app "Finder" to display dialog "Hello from osxdaily.com"'

Запуск диалогового окна предупреждения в приложении Терминал через командную строку:
osascript -e 'tell app "Terminal" to display dialog "Hello from osxdaily.com"'

Запуск диалогового окна предупреждения в Safari через командную строку:
osascript -e 'tell app "Safari" to display dialog "Hello from osxdaily.com"'

Запуск диалогового окна с предупреждением о системных событиях с помощью командной строки:
osascript -e 'tell app "System Events" to display dialog "Howdy Doo"'

Вы можете указать любое приложение для отправки оповещения таким образом, но для многих из нас более полезный выбор будет более широким передним или системными событиями.

Если общий триггер всплывающего диалогового окна слишком навязчив, вы можете по достоинству оценить отправку предупреждений в Центр уведомлений на Mac с помощью terminal-notifier, terminal-notifier — это стороннее решение, которое позволяет сообщениям командной строки появляться в общем Центре уведомлений Mac ОПЕРАЦИОННЫЕ СИСТЕМЫ. Еще менее инвазивным вариантом было бы активировать значок уведомления на значке терминальной док-станции, хотя это может быть слишком незаметным для нужд многих пользователей.

В любом случае, это базовый обзор запуска диалоговых окон визуальных предупреждений в графическом интерфейсе Mac OS с помощью командной строки. При желании вы можете пойти гораздо глубже, чем это, путем более сложного использования AppleScript и osascript, включая взаимодействие с диалоговым окном, влияющее на то, что произойдет дальше, но это приближается к более сложной теме, которую лучше рассмотреть в отдельной статье. Пользователи, которые хотят узнать больше о написании сценариев с помощью AppleScript, могут просмотреть документацию, включенную в приложение Script Editor, которая является довольно полной и подробной.

У вас есть какие-нибудь интересные способы использования этого совета или вы знаете другой способ запуска диалоговых окон в графическом интерфейсе Mac OS из командной строки? Дайте нам знать об этом в комментариях.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован.