O método formail -s
está documentado com um script de demonstração na procmail
man page ; procure esta frase:
Procmail can also be invoked to postprocess an already filled system mailbox.
Você também acharia isso no link
Se a sua caixa de correio não for um arquivo único do mbox Berkeley, é provável que você tenha um diretório em que cada arquivo seja uma mensagem individual. Neste caso, você pode processá-lo simplesmente com
for f in folder/*; do
procmail -options <"$f"
# maybe rm "$f" to remove the original after processing completes
done
Como um exemplo de como filtrar por remetente, uma receita simples seria algo como
# If your mailbox destination is maildir, no locking is required
:0: # so you could lose the second colon here, and in subsequent examples
* ^From:.*\<alice@example\.com\>
alice
:0:
* ^From:.*\<bob@example\.net\>
bob
Isso examina o cabeçalho "De:" que normalmente é o que as pessoas querem dizer com "remetente", embora haja dois outros campos em uso comum (o remetente do envelope, que geralmente é em Return-Path:
, eo cabeçalho Sender:
real que é opcional, mas freqüentemente preenchido pelo software de envio quando o cabeçalho From:
não é o remetente real).
Da mesma forma, para classificar por Subject:
, basta especificar um regex que corresponda aos assuntos que você deseja capturar.
:0:
* ^Subject: *((Fwd?|Re): *)*\[gunk]
gunk-list
encontra mensagens com cabeçalhos de assunto que contêm o rótulo [gunk]
, opcionalmente precedido por espaço em branco e / ou Re:
e / ou Fw:
e / ou Fwd:
.