1.認証

1.認証

私はmutt次の一連のステップを実行します。

$ mutt -f imaps://imap.example.com
username
password
[shift]+[D]
~C [email protected]
[shift]+[D]
~C [email protected]
(...)
[shift]+[D]
~C [email protected]

[shift]+[U]
~d<91d
q
y

だから私は:

  • 資格情報を入力してくださいloginpassword
  • [shift]+[D] ~C mailinglist@domainメーリングリストを削除を選択します。12...窒素
  • [shift]+[U] ~d<91dただし、91日を過ぎていない項目はすべて選択解除してください。
  • q退会
  • yメッセージ削除の確認

これを自動化する方法は? (スクリプトで作成)

mutt -e ...

引用:

答え1

1.認証

構成設定を使用してURIにユーザー名を指定し、imaps://パスワードを指定します。imap_pass

これらの設定をデフォルトに設定したくない場合は、~/.muttrcエイリアスまたはシェルスクリプトラッパーを作成してmuttこれらの設定で実行できます。例えば

$ alias muttexample="mutt -f 'imaps://[email protected]/' 
                          -e 'set imap_pass=PASSWORD'"
$ muttexample

(読みやすくするために改行とインデントが追加されました。)

非常に慎重で、コマンドラインでパスワードを使用したくない場合(をps使用または表示するとわかりやすい)、たとえば、次の2行を含む/procファイルを作成できます。~/.muttrc.extra

source ~/.muttrc
set imap_pass=PASSWORD

chmod 600 ~/.muttrc.extraあなただけが読めるように実行することを忘れないでください。

次に、エイリアスを次のように設定します。

$ alias muttexample="mutt -f 'imaps://[email protected]/' 
                          -F ~/.muttrc.extra"

2. 自動削除

これで認証が解除されたため、メッセージを自動的に削除する最も簡単な方法はを使用することです~/.muttrc.extra

source ~/.muttrc
set imap_pass=PASSWORD

folder-hook imaps://[email protected]/ push '[email protected]<enter>[email protected]<enter>[email protected]<enter>U~d<91d<enter>qy'

フォルダフックでURIを最適化する必要があるかもしれません。私はimapを直接使用しないので、その部分がフォルダフックに必要かどうかimaps://わかりません。USERNAME@

そのフォルダフックラインが編集または理解するには長すぎて複雑になったら、次の場所にコマンドを保存できます~/.muttrc.deletecmds

[email protected]
[email protected]
[email protected]
U~d<91d
qy

次に、フォルダフックにこれを使用します。

folder-hook imaps://[email protected]/ push `sed -z 's/\n/\<enter\>/g' ~/.muttrc.deletecmds`

今回は、外部コマンドを呼び出す~/.muttrc.extraために単一引用符の代わりにバックティックを使用することに注意してください。mutt

このsedコマンドは、\n各改行文字()をリテラルテキストに置き換えます<enter>。その-zオプションを使用するので、sedGNUが必要です。 GNU sedがない場合は、代わりにperlsedを使用できますawk

ところで、メールボックスのローカルコピーでテストすることをお勧めします(imapではなくローカルファイルを指すようにメールボックスやフォルダフックラインなどを調整します)。ローカルメールがない場合は、imapメールボックスの一部または全メッセージをローカルのmboxファイルに保存してください。

qyまた、フォルダフックライン(またはファイル)の~/.muttrc.deletecmds最後の項目なしでテストします。mutt自動的に終了しませんので、手動で終了することを確認してください。正確にあなたが望むもの、それ以上はありません。また、 を%入力した後、シャットダウンして変更をディスクに書き込むことを無効にすることができるため、qyテスト メールボックスを再入力する必要はありません。


3. はいより良いものこれをする方法

mutt実際に作業に適したツールではありません。

これを考えてみましたかperlネットワーク::IMAP::シンプル基準寸法?またはその一つたくさん その他のモジュール perlIMAPおよび電子メール処理用(例:Eメール::シンプル)?

perl気に入らなければ、pythonこれは良いimaplib2モジュールです。

関連情報