GNU/Linux >> Znalost Linux >  >> Linux

Zkontrolujte, zda proces běží na Mac OS X, a poté spustit kód?

Vytvářím skript, který vymaže mezipaměť pro Google Chrome. Chtěl bych však zkontrolovat, zda je Chrome otevřený, a pokud ano, nespouštět kód, ale pokud není, spustí kód. Vidím, že název procesu je Google Chrome, ale kód nefunguje.

To je to, co jsem dosud dělal. Co dělám špatně?

SERVICE='Google Chrome'

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

Jakákoli pomoc by byla oceněna 🙂

Přijatá odpověď:

Jak zmiňuje @StéphaneChazelas, můžete použít pgrep – z manuálové stránky:

Příkaz pgrep prohledá tabulku procesů na běžícím systému a vytiskne ID procesů všech procesů, které odpovídají kritériím uvedeným na příkazovém řádku.

SERVICE='Google Chrome'

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

Linux
  1. Výchozí kód ukončení při ukončení procesu?

  2. Změnit prostředí běžícího procesu?

  3. Jak zkontrolovat průběh běhu Cp?

  1. Jak zkontrolovat, jaké signály proces poslouchá?

  2. Jak zkontrolovat, zda proces stále běží pomocí Pythonu na Linuxu?

  3. Jak zkontrolovat, zda konkrétní služba běží na Ubuntu

  1. Linuxový skript pro kontrolu, zda proces běží, a podle výsledku jednat

  2. Jak zkontrolovat, zda ssh-agent již běží v bash?

  3. Python kód pro kontrolu, zda služba běží nebo ne.?