![]() |
|
|
Googleのunix.com
|
|||||||
| シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| サーバー上で実行中のスクリプトプロセスを監視し、メール投稿死んだ場合、任意のプロセスである | pradeepmacha | シェルプログラミングとスクリプティング | 13 | 2009年3月6日 07:33午前 |
| 子プロセスは親プロセスには、特定の値を返すことはできますか? | Ametis1970 | 高レベルのプログラミング | 8 | 2008年4月10日 12:22午前 |
| プロセスを殺すとメールを送信する場合は、プロセスdoesnot 2分以内に来る | Prince89 | シェルプログラミングとスクリプティング | 1 | 2008年2月15日 07:10午後 |
| どのように処理を開始して5分のためのプロセスを強制終了して睡眠をする | shrao | シェルプログラミングとスクリプティング | 6 | 2007年3月27日 01:54午後 |
| 私の処理モードで寝ているつもりですが、私は後12時間での処理が必要にfirsy広報 | mukesh_rakesh1 | UNIXの詳細&エキスパートのためのユーザー | 0 | 2006年9月5日 03:43午前 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
コード:
#!/bin/ksh
PID=$$
if [[ -f /var/run/script.pid ]]
then
OLDPID=`cat /var/run/script.pid`
RUNNING=`ps -e | grep $OLDPID`
if [[ ! -z "$RUNNING" ]]
then
exit 1
fi
fi
echo $PID > /var/run/script.pid
# your code here
if [[ -f /var/run/script.pid ]]
then
rm /var/run/script.pid
fi
カール |
|
||||
|
この思想などをメモしています。
前のインスタンスがまだ実行されている場合、産卵からlockfilesを作成するプロセスを制御する。 これは、ロックファイルに共通の名前を避けるために優れているとは、プロセスは、プロセスの制御ファイルにIDをリダイレクトします。 最初の場合に共通の名前を使用していますが、高確率は、ロックファイルに同じような命名規則を(同じ名前)も他のスクリプトでは、独自の目的のためにも、同じファイル名を使用して使用することです。 場合、プロセスIDは、ロックファイルの値としては、忙しいシステムでは使用されている可能性が高いが、プロセスの' A 'とpidを実行している- > pid1の仕事をしてから、もう一度b 'には、新しいプロセス'を与えることができますシステム行われます同じpidを- > pid1とすべきではないが、実際のプロセス制御を終了します。 したがって、より良い親プロセスID 、またはそのような一意性を保証するためにタイムスタンプを何かのような詳細な情報を追加します。 そして、最終的なことが書かれているパーマビットを1回でファイルをロックするには、それらのエラーが表示されますので、これを上書きする傾向があるこれらのプロセスの可能性があります。これは確保されていませんので、この方法は少し先を行っている。 |