Here is a small script I wrote a few minutes ago. It gather some informations from the local machine and send them by email to the administrator (me). I plays nice with a @weekly rule in Cron.
It is easily customizable without further explanation. However, I think some enhancements should be added (multiple recipients, generic information addition etc.)
Aujourd’hui, j’ai décidé d’utiliser les services de mon hébergeur afin de gérer mes mails.
Le switch se passe bien, à un détail près : les newsgroups. Je suis abonné au groupe django-developers des Google groups. Le problème, c’est que c’est environ 15 mails de plus dans mon inbox tous les jours. Sur Gmail, j’utilisais un filtre. Pourquoi pas là ?
Me voila donc partit pour lire les bases de l’utilisation de Script Sieve afin de gérer côté serveur les filtres. Après 3 minutes de recherche, voici le "script" :
if header :contains "Reply-To""django-developers@googlegroups.com"{fileinto "Django-dev";}
Hop. Mais, quid des emails déjà reçus ? Tant qu’à les filtrer, autant tous les ranger au même endroit. Et c’est après bien 20 / 25 minutes de recherche que me voilà prêt avec un gentil petit script bash :
#!/bin/bashcd mail/kiznet.fr/thomas/cur/
FILES="*"for f in $FILESdoresult=$(cat $f | grep -i reply-to)if[[$result=~ "django-developers@googlegroups.com"]]; thenecho"Processing $f file..."
mv $f mail/kiznet.fr/thomas/.Django-dev/cur/
fidone
Et voilà. Le script regarde chaque fichier présent dans l’inbox. Il regarde si il trouve un champs reply-to ayant pour valeur django-developers@googlegroups.com (marque de tous les mails venant du groupe). Si il trouve, il déplace dans le dossier approprié (Django-dev chez moi).
En espérant que ces petits scripts pourront être utiles à quelques uns.
Bonne journée.
Les alias avec Bash, voila une méthode pratique ! Cette méthode permet de substituer une commande par une autre. Par exemple, si comme moi, vous avez horreur d’utiliser ls sans arguments, au lieu de taper ls -ali à chaque fois, vous pouvez définir un alias et remplacer ls par ls -ali. Voici comment nous procédons: Lancez une console et tapez, pour notre exemple: alias ls='ls -ali' dans la même console, testez ls, normalement c’est bon ;) Pour garder cet alias et l’appliquer à toutes les instances de bash, rajoutez la ligne que vous venez d’entrer pour définir l’alias dans le fichier ~/.bashrc. Et voila :)