タグ

flockに関するshayashのブックマーク (2)

  • Linux - bash スクリプト二重起動チェック!

    #!/bin/sh # 二重起動チェック if [ $$ != `pgrep -fo $0` ]; then echo "Already running!" >&2 exit 9 fi # メイン処理 echo "[`date '+%Y/%m/%d %T'`] Sleep 10 seconds..." sleep 10 exit 0 $$ は、自分自身のプロセスID。 $0 は、自分自身のプロセス名(相対パス)。 pgrep -fo $0 は、自分自身のプロセスIDを取得。 メリット・デメリットについて メリットは、cron 実行しないのであればこれで充分である。 デメリットは、cron で実行された場合にチェックが効かない。 理由は、pgrep -fo $0 が cron で実行した際のプロセスIDとなってしまう(子プロセス($0)のプロセスIDにならない)ため。 2. 作成例(その2)

    Linux - bash スクリプト二重起動チェック!
  • cronを使ってCakePhp3で定期処理 - Qiita

    cronとは cronlinuxでコマンドを定期的に実行するためのデーモンプロセス。 CakePhp3でShell cronを使って定期処理を行う場合には、まず実行対象となるプログラムが必要になる。 CakePhp3では、コマンドから実行できるプログラムを作成する場合、Shellクラスを継承するプログラムを作る。 とりあえず、メールを送信するSendMailShell.phpを以下に示す。 なお、メール送信に関してはconfig/app.phpの編集も必要なため、そちらの詳細は こちらの記事(CakePhp3でGmailからメールを送る)を参照していただきたい。 <?php namespace App\Shell; use Cake\Console\Shell; use Cake\Mailer\Email; class SendMailShell extends Shell { publ

    cronを使ってCakePhp3で定期処理 - Qiita
  • 1