Ich habe ein Bash-Skript, das growlnotify verwendet, um Benachrichtigungen zu senden. Allerdings funktioniert growlnotify nicht, wenn Growl nicht bereits läuft, und Growl wird auch nicht automatisch gestartet, wenn es benötigt wird. Ich möchte also überprüfen können, ob Growl läuft, und dann starten, wenn es nicht geht.
Ich denke so etwas wie zu tun:So starten Sie das Knurren über die Befehlszeile
g=$(ps -e | grep Growl | grep -v grep)
if [ -z "$g" ] # Growl isn't running
then
# (start Growl)
fi
Wie würde ich Growl über die Kommandozeile starten?
Sie verkürzen können Ihre erste zwei Zeilen zu: 'if! ps -e | grep [G] rowl>/dev/null 2> & 1' –
danke. aber meintest du 'if! ps -e | grep [Gg] rowl>/dev/null 2> & 1'? Wie auch immer, der Prozess, nach dem wir suchen, wird immer Growl.GrowlHelperApp im Namen haben, so dass Sie einfach nach Großbuchstaben Growl suchen können. – anoda9
Nein, ich wollte nicht nach beiden Fällen suchen, da ich wusste, dass der Prozess, den du suchst, mit einer Großzahl G beginnt. So zu tun, ist ein Trick, um zu vermeiden, 'grep -v' mit' zu machen ps'. –