Tambourine作業メモ

主にスキル習得のためにやった作業のメモ。他人には基本的に無用のものです。

シェルスクリプトの二重起動チェック

ロックファイルで確認すると、シェルが異常終了した場合に困る。なので、ロックファイルの中にPIDを入れておく方法を考えた

#/usr/bin/ksh

FLAGFILE=$0.pid

if [[ -a $FLAGFILE ]]
then
  if ps -e |grep -q `cat $FLAGFILE` 
  then
    print 2重起動 > debug.txt
    exit 16 
  fi
fi

print -n $$ > $FLAGFILE 
trap 'rm $FLAGFILE' EXIT 

# これ以下に処理を書く