GNU/Linux >> Linux の 問題 >  >> Linux

プロセスがMacOsXを実行しているかどうかを確認してから、コードを実行しますか?

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

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

SERVICE='Google Chrome'

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

助けていただければ幸いです🙂

承認された回答:

@StéphaneChazelasが言及しているように、pgrepを使用できます –マニュアルページから:

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

SERVICE='Google Chrome'

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

Linux
  1. プロセスが終了したときのデフォルトの終了コード?

  2. 実行中のプロセスの環境を変更しますか?

  3. 同じが実行されている場合はプロセスを確認しますか?

  1. PHPスクリプトが実行されているかどうかを確認するためのcronジョブ、実行されていない場合は実行しますか?

  2. Linuxで実行中のサービスを確認する

  3. 特定のサービスが Ubuntu で実行されているかどうかを確認する方法

  1. プロセスが実行されているかどうかを確認し、結果に基づいて処理する Linux スクリプト

  2. ssh-agent が既に bash で実行されているかどうかを確認するには?

  3. サービスが実行されているかどうかを確認する Python コード。