1. Autenticação
Você pode especificar o nome de usuário no imaps://
URI e a senha com a configuração de configuração imap_pass
.
Se você não quiser colocá-los em seu padrão ~/.muttrc
, poderá criar um alias ou um wrapper de script de shell para executar mutt
com essas configurações. por exemplo,
$ alias muttexample="mutt -f 'imaps://[email protected]/'
-e 'set imap_pass=PASSWORD'"
$ muttexample
(alimentação de linha e recuo adicionado somente para legibilidade)
Se você é sensivelmente cauteloso e não quer a senha na sua linha de comando (onde é facilmente visível com ps
ou procurando em /proc
), então você pode criar um arquivo chamado, por exemplo, ~/.muttrc.extra
com as duas linhas seguintes:
source ~/.muttrc
set imap_pass=PASSWORD
Lembre-se de executar chmod 600 ~/.muttrc.extra
para torná-lo legível apenas por você.
Em seguida, crie seu alias como:
$ alias muttexample="mutt -f 'imaps://[email protected]/'
-F ~/.muttrc.extra"
2. Automatizando a exclusão
Agora que a autenticação foi resolvida, provavelmente a maneira mais fácil
automatizar a exclusão de mensagens é usar um gancho de pastas em ~/.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'
Você pode precisar refinar o imaps://
URI no gancho da pasta - Eu não uso o imap sozinho, então não sei se a porção USERNAME@
é necessária nos ganchos da pasta ou não.
Se essa linha de gancho da pasta ficar muito longa e complicada para editar ou fazer sentido, você poderá salvar seus comandos em ~/.muttrc.deletecmds
:
[email protected]
[email protected]
[email protected]
U~d<91d
qy
e use isso para o seu gancho de pasta:
folder-hook imaps://[email protected]/ push 'sed -z 's/\n/\<enter\>/g' ~/.muttrc.deletecmds'
Observe que estamos usando backticks em vez de aspas simples no ~/.muttrc.extra
desta vez, para que mutt
chame um comando externo.
O comando sed
substitui cada nova linha ( \n
) pelo texto literal <enter>
. Ele usa a opção -z
, então o GNU sed
é necessário. Se você não tem o GNU sed, você pode usar perl
ou awk
.
BTW, recomendo testar isso em uma cópia local da caixa de correio (ajustar as caixas de correio e a linha de gancho de pastas, etc. para apontar para um arquivo local em vez de imap). Salve algumas ou todas as mensagens da sua caixa de correio do imap em um arquivo mbox local se você não tiver nenhum correio local à mão.
Além disso, eu testaria sem o qy
final na linha de gancho da pasta (ou no arquivo ~/.muttrc.deletecmds
). mutt
não sai e sai automaticamente, então você verifica manualmente se está exatamente o que deseja e nada mais. Além disso, você pode desativar a gravação de alterações no disco digitando %
e, em seguida, qy
para encerrar, para não precisar preencher sua caixa de correio de teste novamente.
3. Existem melhores maneiras de fazer isso
mutt
realmente não é a ferramenta certa para este trabalho.
Você já pensou em fazer isso com perl
, usando o módulo Net :: IMAP :: Simple ? ou um dos muitos outros módulos perl
tem para lidar com IMAP e e-mail (por exemplo, < a href="https://metacpan.org/release/Email-Simple"> Email :: Simple )?
Se você não gostar de perl
, python
um bom imaplib2
module.