2016-08-11 8 views
0

私はwheneverのgemを使用しており、正常に動作しています。貸し付けは、私はcronの実行を推測し、私はそれについて知ることができます私のschedule.rbいつでも特定のcronジョブを停止してください

every 1.day, :at => '4:30 am' do 
    puts "cron 1" 
end 

every :hour do 
    puts "cron 2" 
end 

every :sunday, :at => '12pm' do 
    puts "cron 3" 
end 

に3スケジュールを持っています。どのようにして特定の仕事(例えば "cron 2")を止めることができますか?私は実行によってそれを止めることができることを知っていますwhenever -cしかし私は別の仕事を止めたくありません(cron 1 & 3)、また手作業で編集したくないcrontabファイル。

答えて

0

Cronは、Unix環境でデーモンプロセスとして実行される時間ベースのジョブスケジューラです。人々はcronを使用して、を定期的に実行して)の時刻、日付または間隔を実行するジョブ(コマンドまたはシェルスクリプト)をスケジュールします。 Wheneverは、cronジョブの作成と配布のための明確な構文を提供するRubyの宝石です。

crontabファイルを手動で編集することなく、特定のジョブをスキップして使用することはできません。

+0

私はいつでもいつでも使用できませんが、手動でcrontabファイルを編集する必要はありません。多分、私はcrontabを編集するためにrubyを使って最初からメソッドを構築しようとします。また、各ジョブ(またはカスタム 'いつでも' gem)を定義するメソッドを構築します。説明をありがとう。 – itx

+0

@itx crontabを悪い決断に編集する方法をビルドします。私はあなたがルビーコードにロジックを追加することをお勧めします。 –

+0

私は 'いつでも'の宝石のコードを読んで、[この行](https://github.com/javan/whenever/blob/master/lib/whenever/command_line.rb#L14)で識別するためのオプションを見つけました。特定のジョブを識別するために各ジョブに各ジョブを定義するのですか?だから、いつでも '--clear-crontab [some_identifier_name] 'を実行して特定のジョブを停止することができます – itx

関連する問題