GNU/Linux >> Linux の 問題 >  >> Linux

Linux で 10 秒ごとに実行される cron ジョブをスケジュールするにはどうすればよいですか?

解決策 1:

私は先週、同様の仕事をしました。私の解決策は、標準の cron エントリを目的の頻度に掛けることでした。私のcrontabは次のようになります:

* * * * * /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 10; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 20; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 30; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 40; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 50; /usr/local/bin/php /var/www/myscript.php

myscript.php の結果を確認したい場合。デバッグの場合は、

を追加するだけです
&> /tmp/myscipt.log

上記のcrontabの各行に。次に、stderr と stdout がログ ファイルにリダイレクトされます。

解決策 2:

10 秒ごとにジョブをスケジュールすることはできませんが、ジョブを 1 分ごとに実行し、10 秒間隔でループしてスリープするようにスケジュールすることはできると思います。これは、10 秒の間隔が満了する前にコマンドが完了することを前提としています。そうしないと、次のコマンドの実行時にオーバーラップが発生します。これは不安定な解決策のように思えますが、スクリプトのメイン コマンドの非常に短い実行を保証できれば、うまくいくでしょう。

#!/bin/bash
i=0

while [ $i -lt 6 ]; do
  /run/your/command &
  sleep 10
  i=$(( i + 1 ))
done

Linux
  1. Linuxでcronを使用する方法

  2. X秒ごとにLinuxコマンドを実行または繰り返す方法

  3. LinuxでCronジョブ形式を使用してタスクをスケジュールする方法

  1. Ubuntu 20.04で1時間ごとに実行するようにcronでジョブをスケジュールする-それを実装する方法は?

  2. LinuxでCRONジョブを10秒ごとに実行するように設定するには?

  3. 3か月ごとにcronジョブを実行する方法は?

  1. 1 時間ごとに実行可能ファイルを実行するように cron ジョブを設定する方法は?

  2. cron はどのようにジョブを内部的にスケジュールしますか?

  3. 毎日特定の時間にcronジョブを実行する方法は?