プロセスが Mac OS X を実行していることを確認し、コードを実行します。

プロセスが Mac OS X を実行していることを確認し、コードを実行します。

Google Chromeキャッシュを消去するスクリプトを作成しています。ところで、Chromeが開いているかどうかを確認したいのですが、開いている場合はコードを実行せず、開いていない場合はコードを実行します。プロセス名はGoogle Chromeですが、コードが機能していないことがわかります。

これが私がこれまでにしたことです。私は何が間違っていましたか?

SERVICE='Google Chrome'

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

どんな助けにも感謝します:)

ベストアンサー1

pgrep@StéphaneChazelasが述べたように、manページで-を使用できます。

pgrepコマンドは、実行中のシステムからプロセステーブルを検索し、コマンドラインで指定された基準に一致するすべてのプロセスのプロセスIDを印刷します。

SERVICE='Google Chrome'

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

おすすめ記事