添付ファイルを含むメッセージを受信したとします。私がやりたいことは、このメッセージを別のアドレスに送り返すことです。純粋なmailxを使用してこれを実行できますか?それでは、どうすればいいですか?私はHeirloom mailxに再送信コマンドがあることを知っていますが、より原始的なバージョンのmailxを使用してこの結果を得ることができるかどうか疑問に思います。
答え1
ガボmailxのドキュメントによると:
再送信:メッセージリストとユーザー名を取得し、各メッセージを指定されたユーザーに送信します。 「Resent-From:」と関連ヘッダーフィールドは、新しいメッセージのコピーの前に追加されます。
簡単な方法で同じ効果を得るには、MUAをまったく使用する必要さえありません。シェルとパイプのみを使用してMTA / MSPに直接メッセージを送信できます。したがって、メッセージ(タイトル+本文)が次のファイルにある場合foo
:
(
echo "Resent-From: your.email@address
cat foo
) | /usr/lib/sendmail [email protected]
この機能が機能するために、システムがインストールされているMTAがSendmailである必要はありません。/usr/lib/sendmail
事実上の標準のUNIXメール送信インターフェースです。 Postfixやeximなどの他のMTA/usr/lib/sendmail
も提供されています。
また、ドキュメントに記載されている「関連ヘッダフィールド」を考慮していないことに注意してください。私は確認していないので、彼らは推測しますResent-Date
。そのアイテムが何であるかを知り、含める意思がある場合は、上記の追加の説明echo
として追加できます。
最後に、行ったmailxにも、以下に説明する「再送」(大文字Rを参照)という追加モードがあることを指摘したいと思います。
良い再送信ただし、ヘッダー行は追加しません。これは、発信者の身元を隠す方法ではありませんが、同じ受信者にメッセージを再送信する場合に便利です。
したがって、本当にこれを行うには、既存のメッセージをそのまま送信するだけで済みます。
/usr/lib/sendmail somebody@else < foo