- blogs:
- cles::blog
2009/03/17

bashで多重起動を防止する(その1)


シェルスクリプトで多重起動防止処理が必要になったのでちょっと書いてみました。
#!/bin/bash
BASENAME=`basename $0 .sh`
PID_FILE="$BASENAME.pid"
if [ -f $PID_FILE ]; then
STORED_PID=`cat $PID_FILE`
if (ps -p ${STORED_PID} -o pid= >/dev/null); then
echo "Locked by PID($STORED_PID)"
exit
fi
fi
echo $$ > $PID_FILE
# ここに処理を書く
sleep 10
rm $PID_FILE
判定部分がAtomicじゃないので厳密な意味で排他制御はできていないのですが、今回はそこまで厳密でなくても問題ないのでこれでよしとしました。
厳密にやるにはmkdirとか使ってやるほうがいいんでしょうけど。。。。
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/2968
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(114441)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112959)
3 . 年次の人間ドックへ(112383)
4 . 2023 年分の確定申告完了!(1つめ)(111953)
5 . 三菱鉛筆がラミーを買収(111826)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112959)
3 . 年次の人間ドックへ(112383)
4 . 2023 年分の確定申告完了!(1つめ)(111953)
5 . 三菱鉛筆がラミーを買収(111826)
cles::blogについて
Referrers