GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Überprüfen Sie, ob der Prozess Mac OS X ausführt, und führen Sie dann den Code aus?

Ich erstelle ein Skript, das den Cache für Google Chrome löscht. Ich möchte jedoch überprüfen, ob Chrome geöffnet ist, und wenn ja, den Code nicht ausführen, aber wenn dies nicht der Fall ist, wird der Code ausgeführt. Ich kann sehen, dass der Prozessname Google Chrome ist, aber der Code funktioniert nicht.

Das habe ich bisher getan. Was mache ich falsch?

SERVICE='Google Chrome'

if ps ax | grep -v grep | grep $SERVICE
then
    RUNS THE CODE
else
    echo "PLEASE CLOSE GOOGLE CHROME"
fi

Jede Hilfe wäre willkommen 🙂

Akzeptierte Antwort:

Wie @StéphaneChazelas erwähnt, können Sie pgrep verwenden – von der Manpage:

Der Befehl pgrep durchsucht die Prozesstabelle auf dem laufenden System und gibt die Prozess-IDs aller Prozesse aus, die den in der Befehlszeile angegebenen Kriterien entsprechen.

SERVICE='Google Chrome'

if pgrep -xq -- "${SERVICE}"; then
    echo running
else
    echo not running
fi

Linux
  1. Standard-Exit-Code, wenn der Prozess beendet wird?

  2. Sicherstellen, dass ein Prozess immer ausgeführt wird?

  3. Umgebung eines laufenden Prozesses ändern?

  4. Auf Prozess prüfen, wenn dieser läuft?

  5. Wie überprüfe ich den Fortschritt des Laufens von Cp?

So überprüfen Sie die Java-Version auf Mac oder Windows

So listen Sie laufende Prozesse in Linux auf

Laufende Prozesse

Wie überprüft man, auf welche Signale ein Prozess hört?

Bestimmen Sie, in welcher Gruppe(n) sich ein laufender Prozess befindet?

Generisches Nagios-Plugin, um zu überprüfen, ob ein bestimmter Prozess/Dienst ausgeführt wird?