cronでの多重起動チェック

cronから起動されたシェルプロセス内でpsをすると複数出力されることがあるので、以下のようにして対策してみた
MY_ID=$$
COUNT=`ps -ejHf | tee /tmp/tmp.out | grep "$0" | grep -v "grep" | grep -v " ${MY_ID} " |  wc -l`
if [ ${COUNT} -ne 0 ]; then
	echo "--------- PID = ${MY_ID}" >> /tmp/ZZZ.out;
	cat /tmp/tmp.out >> /tmp/ZZZ.out;
fi

2014/11/4
最終更新:2014年11月04日 11:22