Re: archives de listes [was: Re: Salut les djeuns]

2002-09-10 Par sujet menfin

Cedric Duval a dit (02/09/10 14:57) :
 C'est purement subjectif, mais je suis un peu allergique à l'interface
 web. Bien sûr, ça peut être pratique pour une recherche particulière.
 Mais dans ma vision utopique, des archives par mois au format mbox
 (g|b)zipé seraient fournies, que chacun puisse les consulter
 confortablement avec son logiciel de mail favori.

Tout à fait d'accord avec ce point de vue.

-- 
  menfin 

Ils ne savaient pas que c'était impossible,
 alors ils l'ont fait. [Mark Twain]
 
 Quelqu'un ici a dit qu'il y avait une patch pour fider les bugs
 de RedHat5 sur leur page ( www.redhat.com ) mais j'ai ps trouver ou qqun
 pourrias me shooter l'adresse svp?
 -+- Psionic in Guide du Linuxien pervers, Tous drogués !! -+-



msg00039/pgp0.pgp
Description: PGP signature


Re: Archives de la liste

2002-09-10 Par sujet Loïc Minier

Aurélien Beaujean [EMAIL PROTECTED] - Tue, Sep 10, 2002:

 PS: c'est vrai qu'une archive par mois au format mbox serait le
 bienvenu. Quelqu'un se dévoue pour nous faire un petit script à base de
 de cron et de grepmail pour que je les publient sut muttfr.org ? :)

   J'ai bien un bidule qui ressemble sous la main :

 Tous les jours je vérifie qu'il n'y a pas de mail vieux de plus de N
 jours dans une liste de boîtes.

 Inconvénient majeur : il fonctionne sur les boîtes au format Maildir,
 et pas mbox.

 Explication : si vous voulez supprimer un mail d'une boîte assez grosse
 avec formail, il faut l'utiliser en filtre et en même temps l'appeler
 pour récupérer le champ Date: dans les headers ce qui implique soit
 une boucle en n² (ou n est le nombre de messages à traiter dans la
 boîte) ou bien une duplication de la boîte (dans ce cas autant utiliser
 procmail).

   Cependant, j'ai converti mes boîtes au format Maildir, et
 c'est un vrai bonheur. Il est plus rapide de déplacer, supprimer
 un message, surtout dans ce genre de scripts. En plus il est
 possible de faire des constructions shell agréables comme
 for message in mailbox/cur/*; do ... done

   Bref, j'attache mon bousin, il me permet de supprimer les messages
 de listes archivées sur le net pour que les boîtes ne grossissent pas
 trop. Ça peut servir à quelqu'un.


   Je suppose que c'est _beaucoup_ plus facile à faire dans le cas
 où on duplique la mbox sans supprimer de message, en gros c'est un
 formail -s.


   Enfin, la solution qui tue dans ce cas particulier :

  :0:
  * mutt
  /var/www/mutt/`date +%y-%m`-mutt

 ... ou quelque chose d'approchant en intégrant les précédentes
 propositions de procmail.


-- 
Loïc Minier [EMAIL PROTECTED]


#!/bin/sh

# deletes mail older than a specified date in mailboxes in Maildir
# format

TEMP=`getopt -o vh --long verbose,help -n $0 -- $@`

[ $? != 0 ]  (echo Terminating... 2; exit 1)

eval set -- $TEMP

VERBOSE=0

while true ; do
case $1 in
-v|--verbose) VERBOSE=1; shift;;
-h|--help) echo Usage: $0 [-v|--verbose] [-h|--help]; exit 0; shift;;
--) shift; break;;
*) echo Internal error!; exit 1;;
esac
done

say()
{
[ $VERBOSE -eq 1 ]  echo $1
}

del_box()
{
say processing $1
(rmdir ~/mail/$1/cur/ 2/dev/null  mkdir ~/mail/$1/cur/) \
|| for j in ~/mail/$1/cur/*
   do
   k=`formail -x Date  $j`
   d=`date -d $k +%s`
   if [ $d ]
   then
   delta=$(($3 - $d))

   if [ $delta -gt $2 ]
   then
   rm -f $j
   fi
   else
   echo problem with $j in $i 2
   fi
   done

}

for i in \
2-h \
via/anciens \
via/batavia \
via/bruit   \
via/diff\
via/perms   \
via/roots   \

do
del_box $i 1814400 `date +%s`   # 21 days from now
done

for i in \
debian/security \
security/bugtraq\
spam\
via/fw/firewall \
via/fw/top-50-ext   \
via/fw/top-50-proxy \
vl/announce \
vl/libdvbpsi-devel  \
vl/libdvdcss-devel  \
vl/libdvdplay-devel \
vl/vlc-devel\
vl/vlcs \
vl/vlcs-devel   \
vl/vls-devel\
via/nt  \
via/via \

do
del_box $i 604800 `date +%s`# 7 days from now
done