コンテンツにスキップ

Top

シェルスクリプトの二重起動を禁止する

同じシェルスクリプトを二重起動しないように制御する方法。

以下のように pgrep を使えば二回目以降の起動時にエラーになる。

1
2
3
4
5
6
#!/bin/bash

if [ $$ != `pgrep -fo $0` ]; then
    echo "already started."
    exit 1
fi

このシェルを使えば例えばpythonとか他のプログラムの二重起動禁止も容易にできる。

以上!