linux user group brescia

immagine del castello

Archivio della mailing list

Procmail per filtrare solo i "read"

Luca Coianiz luca a coianiz.it
Mar 5 Ott 2004 19:36:20 UTC
On Mon, 4 Oct 2004, andrea gelmini wrote:
>On Sun, Oct 03, 2004 at 01:31:05PM +0200, Luca Coianiz wrote:
>> [versione breve]
>>  Faccio una domanda semplice, che prevede una risposta tipo "si" o "no": a
>> vostra conoscenza, è possibile fare in modo che Procmail "agisca", leggendo
>> direttamente i file in /var/spool/mail/<username> di ogni utente, ed
>> applichi le sue regole solo alle mail GIA' LETTE?
>mi fermo qui, altrimenti mi ci vorrebbe una seconda vita per leggere per
>intero le tue mail...

 Hai ragione. ;DDD

>scherzi a parte:
>a) formail -s procmail <mailbox
>   e (ri)passi le mail a procmail

 THIS is really interesting!.. I'll work on it.
(a meno di non poter dire direttamente a Procmail di leggersi
/var/spool/mail/<username> ovviamente) ;)

>b) in mutt, in modalita' index, premi l (limit) e scrivi 'read', ottieni
>   l'elenco solo dei messaggi letti (poi ci fai quello che vuoi)

 10x ma... uso PINE (lo so: è (quasi) una bestemmia... ma con PINE mi ci
trovo, mentre con Mutt no :().
 Di Mutt (ed altri MUA) m'interessava sapere solo se alle mail "lette"
inserisce tra gli header la stringa "Status: R"... lo fa?
(devi leggere la mail come file per vederlo: quando gli chiedo di mostrarmi
gli header per esteso PINE mi "filtra" il (suo) tag Status).

>c) ti racconto come faccio io, tosto che questo possa esserti in qualche
>   modo utile:

 Di sicuro lo sarà: anche se vogliamo fare cose diverse, il modo come le fai
tu è comunque illuminante.

>   tutte le mail che arrivano vengono tenute in /var/mail/gelma, e copiate
>   nella directory ~/.mail/archivio/nome-della-mailinglist.new
>   la comodita', per me, presumo tu l'abbia gia' intuita.

 In pratica fai l'inverso di quel che voglio fare io: sposti le mail che
t'interessano in un folder ad hoc, per averle "in evidenza".

 Io invece, dato il mio scarso ma piuttosto variagato traffico, le vorrei
tutte in "inbox" (/var/spool/mail/<username>) e solo dopo lette dovrebbero
essere archiviate (in /home/<username>/Mail/<dir/file>): se ci voglio fare
qualcosa (cancellarle, rispondere, altro) lo faccio subito... oppure
reimposto il flag "unread": tutto quanto non è "unread"  dovrebbe essere
spostato ed "immagazzinato".

>   per fare questo, in procmail:
>
>   :0
>   * ^List-Id: Discussion of clustering software components including GFS
>   {
>   :0 c
>   .archivio/cluster_software.new
>   }
>
>   cosi', archiviata una copia in cluster_software.new, me ne ritrova una
>   nella mailbox principale. cio' che leggo viene cancellato, cio' che
>   resta gia' letto, significa che mi interessa o che devo rispondere.

 Devo ancora "studiare" le regole di Procmail ma, così a naso, mi pare che
riguardi solo la (c)opia nell'archivio, non la cancellazione: quella la fai
a mano? oppure hai una regola che cancella i "read" (QUELLA mi potrebbe
servire, in effetti!) :)

>   il gioco funziona bene fino a quando uno controlla regolarmente la
>   mailbox, altrimenti si fa alla svelta a perdere di vista messaggi
>   "urgenti", in mezzo al marasma.

 E' (anche) per questo che vorrei l'archiviazione automatica dei "read": se
ad un certo punto non mi andasse di leggere quei 20-30 messaggi che
rimangono in "inbox" mi basta fare una selezione di gruppo e flaggarli
"read" per saperli comunque archiviati (altrimenti, con lo stesso metodo, li
cancello ;)).

>   notasi che la regola in procmail non necessita delle graffe, qui del
>   tutto ridondanti, ma ora non ci interessa entrare nel dettaglio.
>   in aggiunta, ogni tot lancio un banale script di questo genere
>
>   #!/bin/bash
>   for file in *.new
>   do
>  	/bin/gzip -c9 $file >> ${file%%.new}.gz && /bin/rm -fv $file
>   done
>
>   nella directory di archivio, in modo tale che le mailbox, ovviamente
>   molto comprimibili, vengano conservate in modo compresso (non e' un
>   problema per la consultazione, in quanto mutt capisce di mailbox in gz).

 Capito... mmm... interessante.
 Magari per quello pensavo di fare, più avanti, un'altra regola per spezzare
i file delle mail per mese (o anche per anno) e comprimerli così.
(intanto lo script lo salvo ;)).

>n.b.: scritto alla velocita' della luce. i pensiei possono essere confusi,
>l'italiano non corretto,

 Non c'è problema... finchè funziona il gelma-translator ;D
 E poi, dai, "tosto che questo possa esserti in qualche modo utile" suona
molto "accademia della crusca" (e lo è anche sostituendo "tosto" con
"posto") ;)))))))))

> ma fino a che non mi offri un'altra cena non se ne parla...

 LOL... ci penserò. ;)

 Intanto ti ringrazio.

	LC





Maggiori informazioni sulla lista Lug