web-dev-qa-db-ja.com

定期的に多くの人にメールを送信するようにcronジョブを設定します

毎週月曜日、水曜日、金曜日に自分のメールアドレスから多くの人に固定メールリマインダーを送りたいです。

Crontabを使用してこれを設定するにはどうすればよいですか?

メールサーバーにcronジョブをセットアップするメールアカウントがありますが、送信メールはgmailアカウントとhotmailアカウントになります。

2
gforce89

まず、 この投稿 を参照して、ターミナルからメールを送信する方法を確認してください。この問題を解決し、端末からメールを送信できるようになったら、次の方法でcronジョブをセットアップしてメールを送信できます。

crontab -eコマンドを使用してcrontabエントリを編集し(デフォルトでは、現在ログインしているユーザーのcrontabを編集します)、次の行を追加します。

0 0 * * 1,3,5 $HOME/scripts/send_email.sh >> $HOME/tmp/out 2>&1

ここで、send_email.shスクリプトを作成する必要があります。このようなもの:

#!/bin/bash

recipients="[email protected] [email protected] [email protected]"
subject="...Subject..."

cat $HOME/email_message | mail -s $subject $recipients

$HOME/email_messageは、送信するメッセージ(ファイル)です。

スクリプトの実行アクセス権を付与することを忘れないでください:

chmod +x $HOME/scripts/send_email.sh
7
Radu Rădeanu

端末からメールを送信するための上記のリンクで提供されているレシピがすぐにうまくいかない場合は、正しい後置構成をセットアップするのは苦痛です。迅速な代替ソリューションについては、sendEmail http://caspian.dotconf.net/menu/Software/SendEmail/ を参照してください。

1
Johann