私は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
だから私は:
- 資格情報を入力してください
login
。password
[shift]+[D] ~C mailinglist@domain
メーリングリストを削除を選択します。1、2...窒素[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
オプションを使用するので、sed
GNUが必要です。 GNU sedがない場合は、代わりにperl
sedを使用できますawk
。
ところで、メールボックスのローカルコピーでテストすることをお勧めします(imapではなくローカルファイルを指すようにメールボックスやフォルダフックラインなどを調整します)。ローカルメールがない場合は、imapメールボックスの一部または全メッセージをローカルのmboxファイルに保存してください。
qy
また、フォルダフックライン(またはファイル)の~/.muttrc.deletecmds
最後の項目なしでテストします。mutt
自動的に終了しませんので、手動で終了することを確認してください。正確にあなたが望むもの、それ以上はありません。また、 を%
入力した後、シャットダウンして変更をディスクに書き込むことを無効にすることができるため、qy
テスト メールボックスを再入力する必要はありません。
3. はいより良いものこれをする方法
mutt
実際に作業に適したツールではありません。
これを考えてみましたかperl
?ネットワーク::IMAP::シンプル基準寸法?またはその一つたくさん その他のモジュール perl
IMAPおよび電子メール処理用(例:Eメール::シンプル)?
perl
気に入らなければ、python
これは良いimaplib2
モジュールです。