(一般)mailxを使用してメッセージを再送信できますか?

(一般)mailxを使用してメッセージを再送信できますか?

添付ファイルを含むメッセージを受信したとします。私がやりたいことは、このメッセージを別のアドレスに送り返すことです。純粋な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

おすすめ記事