シェルスクリプトで重複起動(二重起動)防止
シェルスクリプトの二重起動防止は、
- ロックファイルを使用する
- pgrep、pkill、pidofコマンドを使用する
等、色々方法があると思いますが、
以下は、単純なファイル/ディレクトリ確認で重複起動チェックする方法です。
#!/bin/sh PIDFILE=$(basename $0).pid if [ -s ${PIDFILE} ] ; then if [ -d /proc/$(cat ${PIDFILE}) ] ; then # 多重起動 exit fi fi echo $$ > ${PIDFILE} # 処理
と、まー今さらなネタでした。