たとえば、「X気分はどうですか?」など、複数のメールを送信したい場合は到着します。[Eメール保護](Quoraは私がそこで非常によく似た質問をすることを可能にし、ある程度推薦します)。
そしてXを置き換えたい単語辞書が与えられましたか?
私はmailx readmeに次の小さなセクションがあることを知っています。スクリプトを使用して電子メールを送信する方法
答え1
シェルを介してこれを行うという意味であれば可能です。結果は異なる場合がありますが、操作はシェルを介してメッセージを配信するために以前に作成した構造と似ています。
望むより:http://www.akamay.net/PUBLIC/massmail.tar
このスクリプトは3つのファイルを使用します。
資格情報ファイル - 実際の構成ファイル。 /tmpに入れてみてください
HEAD_FROM="BSDUSER" # Mail from: HEAD_TO="${FIELD1[$a]}" # Rcpt to: HEAD_REPLY-TO="[email protected]" # Reply to :) HEAD_BCC-TO="[email protected]" # BCC to HEAD_SUBJECT="NOTICE - Personalize mass mail for ${FIELD3[$a]}" HEAD_PRIORITY="High" # Low / Medium / High HEAD_IMPORTANCE="3" # Importance HEAD_MIME-VERSION="1.1" # MIME Version HEAD_CONTENT-TYPE="text/plain" # Plain or HTML TEAM_CONTACT="[email protected]" # Signature @ EOF INTERVAL="2" # Sleep sec. per send
所有者ファイル - ":"で区切られたフィールド値を含むファイル。
john:Tuesday:john:[email protected] sally:Wednesday:sally:[email protected] lisa:Friday:lisa:[email protected]
実際の一括メーリングスクリプト。スクリプトはとても簡単です。それがすることは、与えられたフィールド(field1、2、3など)の値でforループを使用して構成ファイルを解析することです。私がしたことは、CSVファイルの値を変更し、それを正しい値で実行可能なテキスト形式で保存してから、すべてをsendmailにパイプすることでした。
F1=`cat $2 | cut -d: -f1 | perl -ne 'chomp;print" $_"' | sed 's/^[ \t]*//;s/[ \t]*$//'` F2=`cat $2 | cut -d: -f2 | perl -ne 'chomp;print" $_"' | sed 's/^[ \t]*//;s/[ \t]*$//'` F3=`cat $2 | cut -d: -f3 | perl -ne 'chomp;print" $_"' | sed 's/^[ \t]*//;s/[ \t]*$//'` F4=`cat $2 | cut -d: -f4 | perl -ne 'chomp;print" $_"' | sed 's/^[ \t]*//;s/[ \t]*$//'` F5=`cat $2 | cut -d: -f5 | perl -ne 'chomp;print" $_"' | sed 's/^[ \t]*//;s/[ \t]*$//'` echo -e "#!/bin/bash" > $TMP/notify_exec echo -e "FIELD1=($F1)\nFIELD2=($F2)\nFIELD3=($F3)\nFIELD4=($F4)\nFIELD5=($F5)\n" >> $TMP/notify_exec echo -e "for ((a=0;a<\${#FIELD1[*]};a++))\ndo" >> $TMP/notify_exec echo -e "echo \"From:$C_F" >> $TMP/notify_exec echo -e "To:$C_T\nReply-to:$C_RT\nBcc-to:$C_BT\nSubject:$C_S\nPriority:$C_P" >> $TMP/notify_exec echo -e "X-Mail-Priority:$C_I\nMime-Version:$C_M\nContent-Type:$C_C\n$C_MSG\n\n\n" >> $TMP/notify_exec echo -e "Generated using: $0 - Got questions? E-Mail us at: $C_TM" >> $TMP/notify_exec echo -e "\" | /bin/sendmail -t -oi" >> $TMP/notify_exec echo -e "sleep $C_SL" >> $TMP/notify_exec echo -e "done\nexit 0" >> $TMP/notify_exec chmod +x $TMP/notify_exec
カスタム応答にmailxを使用する際にいくつかの問題があったので、メッセージを転送するためにsendmailに切り替えましたが、うまくいきました。
答え2
これメールのマージ拡張Thunderbirdはこの問題を解決する必要があります。