web-dev-qa-db-ja.com

LinuxでCRONジョブを10秒ごとに実行するように設定するにはどうすればよいですか?

開始時刻から10秒ごとにCRONジョブを実行する必要があります。

Linuxでは、開始から10秒ごとにCRONジョブを実行する方法は?

私は次のようにしようとしています-

要求を行う(または開始する)04:28:34に、4:28:40ではなく04:28:44に開始する必要があります

これは私がやったことであり、私はしようとしています、

# m h  dom mon dow   command
*/10 * * * * /usr/bin/wget http://api.us/application/

10秒ごとに動作しないように、ここで何が間違っていますか?

24
dev1234

Sougata Boseの答えを詳しく述べると、OPは開始時刻から10秒ごとにコマンドを実行することを望んでいると思います。最初の1分とそれ以降の1分ごとに10秒ではありません。

cronの解像度は1分のみです(解像度がより優れていると思われる他のツールもありますが、Unixの標準ではありません)。

したがって、問題を解決するには、それぞれがスリープ状態の60秒/ 10秒= 6 cronジョブが必要です。

例えばcrontab -eを実行し、選択したエディターに次の行を追加します。

***** ( /usr/bin/wget http://api.us/application/ )  
***** ( sleep 10 ; /usr/bin/wget http://api.us/application/ )  
***** ( sleep 20 ; /usr/bin/wget http://api.us/application/ )  
***** ( sleep 30 ; /usr/bin/wget http://api.us/application/ )  
***** ( sleep 40 ; /usr/bin/wget http://api.us/application/ )  
***** ( sleep 50 ; /usr/bin/wget http://api.us/application/ )  
38
Rodent

分単位で*/10を指定しました。 Cronは最低1分間しか許可しません。これを試すことができます-

* * * * * ( sleep 10 ; /usr/bin/wget http://api.us/application/)

スリープ状態で10秒ごとに実行されます。

6
Sougata Bose