0

簡単なコマンドの出力を入力して、log.txt というファイルを毎分作成する簡単な crontab を作成しようとしています。今、これは私がcrontabに入れたものです:

* * * * * (/usr/bin/ls <pathToRandomDirectory) > log.txt

私の理解では、5つのアスタリスクは「毎分」に対応しています。しかし、これを実行すると、log.txt ファイルが作成されません。私がここに欠けているものはありますか?

また、ジョブが作成されるたびにメールを送信したくない場合は、次の行を入力する必要があることがわかりました。

>/dev/null 2>&1

私のcrontabファイルのどこかに。これは正確にはどこに行きますか?コマンドの最後ですか、それとも別の行ですか?

4

2 に答える 2

2

log.txt の絶対パスを指定する必要があります。それ以外の場合は、/ に作成されます。

また、>/dev/null 2>&1文末にある必要があります。2 (エラーを意味する) を無視したい場合は、単に2>/dev/null.

次に、最終的な cronjob は次のようになります。

* * * * * /usr/bin/ls pathToRandomDirectory > /pathToRandomDirectory/log.txt 2>/dev/null
于 2013-02-11T11:57:04.327 に答える
1

そのファイルには正確に何が必要ですか?これにより、テキスト「something」を含む新しいファイルが毎分作成されます。

* * * * * echo "something" > /path/to/your/file.txt

特に新しいcrontab構成を作成したときに、crontabでいくつかの問題が発生しました-私の問題は、crontabの最後に空の行を挿入する必要があることでした-一部のシステムでは、正しく動作するために必要です。だからあなたがするなら

$ crontab -l

出力は、各行に cron ジョブのリストがあり、最後に空の行があるはずです。

うまくいく場合は試してみてください。申し訳ありませんが、メールについてはよくわかりませんが、そのような行を crontab に追加して設定をいじる必要はないと思います。デフォルトではメールは送信されません。

于 2013-02-11T09:16:13.373 に答える