タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

cronに関するHHRのブックマーク (8)

  • cron で > /dev/null して椅子を投げられないための3つの方法 - 酒日記 はてな支店

    (タイトルは釣りです) いい加減、>/dev/null 2>&1と書くのをやめたらどうか - DQNEO起業日記 この記事のタイトルが twitter で流れてきたのを見て、「そうだ!出力を /dev/null に捨てるなんてとんでもないよね!」と思ってよく読んだら /dev/null に間違いなく捨てる方法だったのでつい crontabに > /dev/null 書いたら椅子投げる 2012-06-13 00:01:17 via YoruFukurou とつぶやいてしまったのですが、では出力を捨てないためにはどうすればいいのか。現時点での個人的ベストプラクティスを書き留めておきます。 デフォルト : メールで送る (MAILTO) せっかく cron daemon がログを捨てないためにわざわざメールで送ってくれるのに、それを > /dev/null で踏みにじるとはひどい。 とはいえ、

    HHR
    HHR 2022/12/14
    loggerコマンドのやり方を探したけど見つからなかった。ブクマしていなかった…
  • cron で奇数時毎に処理を実行する

    crontab の書式は 分 時 日 月 曜日 コマンド となっている。 例えば、2時間ごとに ~/test.sh を実行するなら、 0 */2 * * * ~/test.sh となる。これにより、偶数時毎 (0:00, 2:00, 4:00, …, 22:00) に処理が実行される。 では、奇数時毎 (1:00, 3:00, 5:00, …, 23:00) に実行したい場合はどうすれば良いのか? 0 1,3,5,7,9,11,13,15,17,19,21,23 * * * ~/test.sh と書けば可能だが、もっとスマートな方法はないのか。 正解は、 0 1-23/2 * * * ~/test.sh とすれば良い。これにより、「1時〜23時の間で2時間おき」となり、奇数時毎に処理を実行できる。

    cron で奇数時毎に処理を実行する
    HHR
    HHR 2020/07/20
    "0 1-23/2 * * * ~/test.sh" 1時〜23時の間で2時間おき。よく忘れる。
  • cron上でのコマンド実行を再現する - Qiita

    シェル上だと動くのにcron上だと動かない。 よく聞くお話ですよね。 大体はcron上と普段のシェル上で環境変数が違うために起こる問題です。 そういう時に使えるtipsを共有します。 個人のマシン上で適当に動かすようなcronだと みたいにしてログインシェルを間に噛まして環境変数を上書きして実行することでごまかしたりもできます。 これまた別の依存する箇所を増やすので 個人のマシンかrcファイルがちゃんと管理されているような状況以外ではオススメできません。 なのでcron上で実行される状況とほぼ同じ状況でスクリプトを実行してみましょう。 cron上では環境変数はほぼ空なので環境変数を空にしてみましょう。

    cron上でのコマンド実行を再現する - Qiita
    HHR
    HHR 2014/05/23
    envを確認しようという話
  • cron等をつかって外部のAPIに問い合わせる場合は、毎時0分を避けるのが大人のマナー - blog.nomadscafe.jp

    なんかtwitterで書いたらウケたっぽいので cronをつかって外部のAPIに問い合わせる場合は、毎時0分をさけるのオススメ!!!!お兄さんとの約束だ!!! — masahiro nagano (@kazeburo) August 9, 2012 某サービスのAPIへの問い合わせ件数を調べると、毎時 0分台(0秒から59秒)のアクセスは1分から59分までの1分間の平均アクセス数の5倍から8倍にもなります。 これはおそらく、crontabの設定が 0 * * * * /path/to/call_foreign_api になっていることが多いからじゃないかなぁと思うのです。 その結果、サーバのロードアベレージは このように毎時0分だけ跳ね上がってしまいます。サービスを快適に提供できなくなる可能性があるので、APIの利用を制限したり、サーバを追加しなければなりません。これはサービス利用者、サー

    HHR
    HHR 2012/08/10
  • crontab -e は「絶対に」使ってはいけない - ろば電子が詰まつてゐる

    今までナチュラルにcrontab -eでcron編集をしていたのだけど、実はこれはとてつもなく危ないやり方だった。ということを、今さら知った。 crontab -rの恐怖 crontabコマンドにはrオプション(Remove)があり、これを実行すると何の警告もなく全てが消え失せる。 macbook:~ ozuma$ crontab -l 15 * * * * /home/ozuma/bin/hoge.sh 0 9 1 * * /home/ozuma/bin/piyo.sh > /dev/null 2>&1 */5 * * * * /home/ozuma/bin/fuga.sh > /dev/null 2>&1 macbook:~ ozuma$ crontab -r macbook:~ ozuma$ crontab -l crontab: no crontab for ozuma macbo

    crontab -e は「絶対に」使ってはいけない - ろば電子が詰まつてゐる
    HHR
    HHR 2012/07/24
  • cronで30秒毎など、秒単位で処理を実行したい場合 - 元RX-7乗りの適当な日々

    cronは分単位からの制御が可能だが、秒単位まではサポートしていない。 というわけで、例えば30秒毎などに実行したい場合は工夫が必要になる。 # ニーズがあるかはわからないが、例えば短い周期で監視を行っている場合など。 例えば、30秒毎に実行したい場合は、以下のようにcronの設定を記述する。 * * * * * command & sleep 30; command上記の"command"の部分に、実行したいコマンドを記述する。 1つ目の"command"を実行しながら、それと並列して30秒間sleep、そして2つ目の"command"を実行、という流れ。 他にも、毎分15秒に処理を実施したい場合は以下。 * * * * * sleep 15; command 上記が、何かのお役に立てば。 追記 bashの"&"と"&&" - 元RX-7乗りの適当な日々 詳解 Linuxカーネル 第3版

    cronで30秒毎など、秒単位で処理を実行したい場合 - 元RX-7乗りの適当な日々
    HHR
    HHR 2010/09/18
  • cronでは「毎月第1月曜日に実行」ができない — ディノオープンラボラトリ

    社内の技術メモに「cronでは第1月曜日に実行などはできないので、実行されるスクリプト側で条件判定しないとダメ」というような記述がありました。一体どういうことでしょうか。 crontabの書式は「分 時 日 月 曜日 コマンド」です。また、数字はハイフンで範囲指定ができます。下記のように指定すれば毎月第1月曜日の午前3時にコマンドを実行できそうな気がします。 0 3 1-7 * 1 /path/to/command/execute-only-1st-monday しかし、これは期待通りには動きません。「1日から7日までの期間の唯一の月曜日」を指定したつもりが、実際には「1日から7日のすべて、または日付に関係なく月曜日」と解釈されます。マニュアルにも書いてあるのですが、「日」と「曜日」が両方指定された場合、OR条件になるのです。 ネット上を探すと、これでハマって試行錯誤した人が複数いるようで

    HHR
    HHR 2009/04/09
  • cronでエラーメールの送り先を指定する方法 — ディノオープンラボラトリ

    cronは良く使うツールの一つだと思いますが、何故かトラブルの思い出がつきまとうのは僕だけでしょうか。今日はそんなcronの便利な機能を一つ紹介します。 cronで実行するコマンドの作法 はじめにcronスクリプトの作法を紹介します。cronは決められた時間が来るとコマンドを自動実行する仕組みですが、自動実行するコマンドは下記の条件を満たすべきです。 正常終了した場合は標準出力/標準エラー出力に何も出力しない 異常終了した場合は標準出力/標準エラー出力にエラーメッセージを出力する というのも、cronで実行したコマンドが標準出力・エラー出力に1バイトでも出力した場合、その内容がメールで送信されます。僕は異常時だけメールを受け取る使い方が一番スマートに思えます。 もしくは、次のような使い方も考えられます。 コマンドのログは標準出力に出力し、ローカルのログファイルに追記する 異常終了した場合は

    HHR
    HHR 2009/04/01
  • 1