Hai.Adachinです。
ちょいと先輩に教わったんですが、
cronで定期実行しているスクリプトがたまに終わらなかったりして、
また時間になると勝手にスクリプト起動…
うおおおおおお!!!!!!!!!やべえええ終わってないやろおおとなったことがありますが、
setlockコマンドを使えば問題ないとのことなのでご紹介します。
こいつはやりおる(・∀・)
■setlockを使ってみる
まずはオプションを紹介。
-n:指定したファイルがロックされている場合、コマンド実行を諦めて終了する
-N: デフォルトオプション。指定したファイルがロックされている場合、新しいロックをかけることができるまで待機する
-x: ファイルのロックができない(あるいは作成できない)場合、コード0で終了する
-X: デフォルトオプション。ファイルのロックができない(あるいは作成できない)場合、エラーメッセージを吐いて非0コードで終了する
・よく使うオプション
1 2 |
$ setlock -XN hoge.sh (現在起動中のスクリプトが終了するのを待ってから実行される) |
1 2 |
$ setlock -nx hoge.sh (諦めて起動終了) |
■まとめ
ちなみにsetlockコマンドはdeamontoolsを入れないとダメなので、
下記のサイトを参考にしてインストールしてくださいw(メンドウ)
http://joppot.info/2014/07/22/1777
参考:http://www.emaillab.org/djb/tools/daemontools/setlock.html
0件のコメント