10

crontab の lint のようなものはありますか? 何かがうまくいかなくなるのを待たずに、すべてのスペースと星を整理したことを知りたいです。

4

6 に答える 6

10

cron 用の Python リンターがあります。プロジェクトを見るchkcrontab

次の方法でインストールできますpip

pip3 install chkcrontab

使用例:

chkcrontab /etc/cron.d/power-schedule
Checking correctness of /etc/cron.d/power-schedule
E: 15: 0 12 * foo * * root echo hi
e:     FIELD_VALUE_ERROR: foo is not valid for field "month" (foo)
e:     INVALID_USER: Invalid username "*"
E: There were 2 errors and 0 warnings.
于 2014-11-06T09:20:21.840 に答える
9

CronWTF は、crontab を作成する際に非常に役立つことがわかりました。CronWTFは、スターとコマンドをより人間に優しいものに変換し、奇妙な cron ジョブを読みやすくします。

さらに良いことに、ローカルで実行できるすべての JavaScript であるため、上位の sekrit cron ジョブについて誰も知る必要はありません。

ruby をコーディングする場合の別の方法は、 whenジェムを使用することです。schedule.rb解析するために呼び出されるサンプルの ruby​​ ファイルを使用し、次のように crontab を生成します。

every 10.minutes do
  command "/usr/bin/my_great_command" 
end

のcrontabエントリが表示されます

0,10,20,30,40,50 * * * * /usr/bin/my_great_command

そして、これはここにあります:

every 2.days, :at => '4:30am' do
  command "/usr/bin/my_great_command" 
end

あなたに与えます:

30 4 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31 * * /usr/bin/my_great_command
于 2010-10-04T10:50:55.977 に答える
5

crontab のリントは必要ないと思います。スペースで区切られた 5 つのフィールドがあり、次にスペースがあり、次に実行するコマンドとその引数が行を終了します。

また、少なくとも Ubuntu では、crontab では bum ファイルを保存できません。私はいくつかのことを試してみましたが、それらすべてにバーフがありました。これは、crontab が独自の「cron 用リント」であることを意味していると思います。

于 2009-01-26T12:31:36.843 に答える
1

少しずれているかもしれませんが、kcron や gcrontab などのグラフィカルな crontab エディターを使用してロードするのが簡単な方法です。スクリプトで呼び出す必要がある場合、この質問はphpでそれを行う方法についてです。

于 2009-01-26T11:48:07.087 に答える