Как начать рычание через командную строку

У меня есть bash script, который использует growlnotify для отправки уведомлений. Тем не менее, growlnotify не работает, если Growl еще не запущен, и он не будет автоматически запускать Growl, если он ему нужен. Поэтому я хочу проверить, работает ли Growl, а затем запустить его, если это не так. Я собираюсь сделать что-то вроде:

g=$(ps -e | grep Growl | grep -v grep)
if [ -z "$g" ]  # Growl isn't running
then
# (start Growl)
fi

Как мне запустить Growl через командную строку?

Ответ 1

Обычно установщик Growl гарантирует, что пользователь, выполняющий установку, получит элемент Startup, который запускает GrowlHelperApp.app, демон уведомления для Growl. Приложение встроено в панель предпочтений Growl, поэтому вы не можете гарантировать, где она будет расположена; он может находиться в /Library/PreferencePanes или ~/Library/PreferencePanes, в зависимости от того, как был установлен Growl. Если вы чувствуете, что не можете доверять правильному пользователю, вы можете вручную запустить вспомогательное приложение из командной строки независимо от местоположения, используя его идентификатор пакета:

open -b com.Growl.GrowlHelperApp

Ответ 2

pgrep growlnotify || growlnotify <options> &