須山です。

# fj.comp.lang.rubyを追加しました

Shinji KONOさんの<3990516news.pl@rananim.ie.u-ryukyu.ac.jp>から
>でも、flock すれば、プロセスが死ねばOSが解除してくれるし、ちゃんと
>した lock になるし... flock しろよ〜 python なら、簡単だし〜

河野先生お勧めのflockに挑戦してみました。シェルスクリプトで
はどうすればいいのかわからなかったので,rubyで作ってみまし
た。

# PerlやPython走らないし,多少なりとも知っているUNIX系のスク
# リプトとなるとRubyしか選択肢がありませんでした。

今のところ,うまく動いているようです。

#!/usr/bin/ruby

require('fileutils')

lockfile = "/home/tsuyama/LOCKFILE"

FileUtils.touch lockfile
f = File.open(lockfile, "r")

if f.flock(File::LOCK_EX)
  system("/usr/local/bin/isbg.py")
else
  exit
end

f.flock(File::LOCK_UN)
f.close
File.delete lockfile


-- 
Takeshi Suyama mailto:tsuyama@be.to