コマンドラインでIMAP経由で電子メールを検索するには?

コマンドラインでIMAP経由で電子メールを検索するには?

IMAPサーバーを検索して、特定のEメールアドレスからEメールを送信したか、参照として追加したか、受信したかどうかを確認し、その場合はメッセージ本文のヘッダーとフラグメントを検索したいと思います。

https://tewarid.github.io/2011/05/10/access-imap-server-from-the-command-line-using-openssl.html

imapにアクセスするためにopensslを使用する上記の例を見ました。しかし、IMAP検索に適したツールであるかどうかはわかりませんか?

この目標をどのように達成できますか?

ベストアンサー1

これは適切なツールではありません。

OpensslはIMAPクライアントではありません。 IMAPと同じIMAP暗号化TLS / SSLトンネルでプレーンテキスト通信をカプセル化します。したがって、この記事は、Telnetを使用して手動でIMAPコマンドを入力する方法を説明する記事です。ただ、Telnet を暗号化されたセキュリティの代替手段に置き換えるだけです。あなたは注文タイプライターではありません。 IMAPを正しく使用する方法を知っている図書館にお任せください。

IMAP クライアントが必要です。 CURLは実際にメッセージ部分をダウンロードできるので、ここでやりたいことをやってください。フェッチメールも同様です。実際にはかなり多くのIMAPクライアントがあります。おそらく、選択したスクリプト言語にも当てはまります!すべての電子メールに対してサーバーへの接続をリセットしたくないので、シェルを使用せずに、より適切なスクリプト言語を使用することをお勧めします。実際、最初の数十回の接続要求の後は1分以内になり、私のメールサーバーはユーザーをブロックします。

しかし、あなたがやっていることは、あなたが望むことを達成することには意味がありません。代わりに、すべてのメッセージヘッダーをダウンロードして一致するものを見つけるのではなく、サーバー自体からユーザーに代わって検索を実行するようにサーバーに要求する必要があります。 IMAP クライアントは、IMAP が提供する検索プロトコルへのアクセスを提供する傾向があります。だからちょうどその道に行きなさい。

おすすめ記事