このような状況があります:Linuxサーバーでcrontabを使用してジョブをスケジュールします。私はスーパーユーザーではないので、crontabファイルだけを編集しています(crontab -l、エディターvimを使用)。テストのために、私はそこに置きます:
* * * * * echo asdf
そして、ジョブは実行されていません。サーバーの再起動は必要ですか?または、おそらく管理者が移動しますか?
おそらく、cronジョブは独自のシェルで実行されます。したがって、コンソールにasdf
が表示されることは期待できません。
あなたが試してみるべきは
* * * * * echo asdf > somefile_in_your_home_directory_with_complete_path.log
次に、テールを実行してファイルを確認します。
tail -f somefile_in_your_home_directory_with_complete_path.log
そうでない場合は、cronデーモン自体が実行されているか、停止しているかを確認します。
# pgrep crond
OR
# service crond status
私にとって_* * * * * /bin/echo text > file
_は機能していません...なぜか、前兆であり、すべてが設定されています。 (このコマンドを特定のrootユーザーとして実行すると、これを明確にするために正常に実行されます。)これは、私の例で__PATH=$PATH:/bin
_というパスを挿入することで解決できます。
代わりに、_* * * * * echo text > file
_は正常に機能しており、おそらくパスの問題です。
私が助けたことを願っています