3

OTRS には、電子メールのデータベースがあります。eml「article_plain」というテーブルに未加工のメール (形式) があります。

次のようなステートメントを使用して、これを簡単にダンプできます。

SELECT ap.body FROM article_plain ap 
INNER JOIN article a ON (a.id = ap.article_id) 
INNER JOIN ticket t ON (a.ticket_id = t.id) 
INNER JOIN queue q ON (t.queue_id = q.id) 
WHERE q.name LIKE '%something%' 
LIMIT 10;

コマンドラインを使用:

mysql -u root otrs -pmypassword --silent --skip-column-names --raw -e 
"select ap.body from article_plain ap inner join article a on (a.id = ap.article_id) inner join ticket t on (a.ticket_id = t.id) inner join queue q on (t.queue_id = q.id) where q.name like '%something%' limit 10;" 
>> ./emlconcat_something

連結されたemlファイルを含む単一のファイルにエクスポートしました。これは次のようになります。

X-Mimeole: Microsoft Exchange V6.5 によって作成されました。受信: xxxxxxxx.org.za ([10.0.50.12]) から、Microsoft SMTPSVC (6.0.3790.4675) を使用して xxxxxx.xxxxxx.org.za によって取得されました。Tue, 28 Sep 2010 11:20:22 +0200 MIME-Version: 1.0 Content-Type: multipart/related; type="マルチパート/代替"; 境界="----_=_NextPart_001_01CB5EEE.613E57EA" 受信: xxxxxx.xxxxxxx.co.za ([41.208.19.106]) から xxxxxxxx.org.za によって SMTP を使用。2010 年 9 月 28 日 09:27:03 +0000 受信: xxxxx.xxxxxxx.co.za による mail.dtss.co.za (mail.xxxxx.co.za [196.4.89.13]) から。Tue, 28 Sep 2010 11:27:00 +0200 受信: xxxxx-xxxxx.xxxxxx.org.za ([172.16.252.23]) から Microsoft SMTPSVC (6.0.3790.4675) を使用した mail.dtss.co.za による。Tue, 28 Sep 2010 11:30:44 +0200 Content-Class: urn:content-classes:message Subject: RE: Some subject Date: Tue, 28 Sep 2010 11:24:

これは、MIME 形式のマルチパート メッセージです。

------_=_NextPart_001_01CB5EEE.613E57EA コンテントタイプ: マルチパート/代替; 境界="----_=_NextPart_002_01CB5EEE.613E57EA"

------_=_NextPart_002_01CB5EEE.613E57EA コンテントタイプ: テキスト/平野; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable

親愛なる誰でも

他のすべての電子メールは最初の電子メールに連結されます (最初のselectステートメントに従って)。

質問:
これを mbox または maildir 形式に変換するにはどうすればよいですか?
つまり、Linuxサーバーでどのスクリプトを使用すればよいですか?

4

2 に答える 2

0

1つの解決策は使用することですcsplit

例:

csplit -z -k mail_export_file "/Mimeole/" {*}

「Mimeole」の部分は理想的には拡張する必要がありますが、正規表現を吸うので、読者の練習問題として残しておきます。

于 2012-12-19T14:04:08.933 に答える
0

formail付属のユーティリティにprocmailは、ファイルを個々の電子メール メッセージに分割するためのいくつかのヒューリスティックがあります。デフォルトでは、Berkeley mbox 入力が想定されていますが、アドホック形式や壊れた形式を識別するためのバリエーションがあります。

ダンプの生成は自分で制御するので、ダンプされた各メッセージの前に単純で一意の区切り文字を配置することをお勧めします。

于 2013-06-28T04:42:58.423 に答える