0

Linux コマンドラインでシリアル メールを生成したいと考えています。メールアドレス、件名、およびメッセージテキストを受信者ごとに別々の行の列に示すファイルがあるとします。いえ

recipient1@mail.com subject1 text1
recipient2@mail.com subject2 text2
...

スクリプトは、私のために電子メールを作成する同僚に送信する予定であるため、標準コマンドを使用する必要があります。行のループは xargs である可能性があります...コマンドラインツールを使用できますmailか?

メールがすぐに送信されないことが重要です。理想的には、ユーザーの好みのメール クライアントでインポート用のファイルを作成します。送信者がメールを送信する前に確認できるようにします。また、メールに添付ファイルを追加できるようにしたいと考えています。

私は例えば試しました

function mail_kmail {
    kmail -s "$2" --body "$3" --attach "$4" --composer "$1" 
}

function mail_thunderbird {
    thunderbird -compose "to='$1',subject='$2',body='$3',attachment='$4'" 
}

ファイルから入力データを読み取る

while read recipient subject body attach $file
do
  mail_kmail "$recipient" "$subject" "$body" "$attach";
done

しかし、これは私の同僚がこれらのメール クライアントのいずれかをインストールしてセットアップした場合にのみ機能します。

この (終了した) 関連の質問を見つけました: Linux で自動化された電子メールを送信するにはどうすればよいですか? .

4

1 に答える 1

0

mutt を使用してメールを送信できます。以下に例を示します。

echo "This is the message body" | mutt -a "/path/to/file.to.attach" -s "subject of message" -- recipient@domain.com

ここで何を達成しようとしているのかを知るのは難しいため、使用する構成ファイルを作成することもできますが、ユースケースについてさらに調査するか、詳細を提供する必要があります。

于 2013-06-05T22:55:01.237 に答える