通常、クローンジョブは私に電子メールで送信されstdout
ます(以下の設定stderr
に従って)。MAILTO
crontab
作業が完了したら。
私の仕事がfork
/ exec
(または単に)または他の仕事で始まるとexec
どうなりますかsystem("foo &")
?
- サブタスクで何が起こるのか、起こるのですか
stdout
?stderr
電子メールで受信できますか?
最も理想的な結果は、両親と子供に別々の電子メールを送信することですが、それは私が自分で準備する必要があるようです。
答え1
子プロセスは親プロセスから stdin、stdout、および stderr を継承します。 Forkとexecはcronジョブで一般的です(シェルスクリプトで実行されるすべてのコマンドにfork / execが含まれることを考慮してください)。出力は通常同じcronメールで送信されます。
別のメールで送信するのはとても簡単です。 stdout/stderr をmail
次のようにパイプするだけです。
#!/bin/sh
command-1 2>&1 | mail -s 'output 1' [email protected]
command-2 2>&1 | mail -s 'output 2' [email protected]
cronへの唯一の電子メールが必要な場合(空の動作ではない場合)その他のユーティリティ利便性ifne
(… | ifne mail -s…
)が含まれています。