プログラムがすでに実行されていることを確認するためのbashスクリプトを作成する方法

プログラムがすでに実行されていることを確認するためのbashスクリプトを作成する方法

私はPythonプログラムを作成しており、bashスクリプトで起動する予定です。ただし、コンピューターがプログラムを 2 回実行しようとすると、プログラムが正常に動作しません。プログラムを一度だけ起動すればよいので、プログラムがすでに実行されているかどうかはどうすればわかりますか?

ベストアンサー1

1つの方法はPythonプロセスのPIDを記録し、/var/runbashスクリプトはそのPIDを持つファイルが存在し、そのPIDに対してまだ実行されていることを確認できます。

もう1つの可能性は、pgrepプロセスが実行されているかどうか、名前に固有の部分があるかどうかを確認することです(Pythonは使用するには一般的ですが、pyスクリプト自体は機能する可能性があります)。たとえば、

if pgrep -f "python yourScript.py" &>/dev/null; then
    echo "it is already running"
    exit
else
    python yourScript.py
fi

yourScript.pyそれが自分自身を悪魔化したり、それに似ていると仮定します。

おすすめ記事