Envoyer des emails en ligne de commande sous Linux

Email simple

echo "Corps du message." | mail -s "Sujet de l'email" contact@domaine.com

Email avec fichier de log dans le corps du message

mail -s "Sujet de l'email" contact@domaine.com < /var/log/apache2/error.log

Email avec copie et copie cachée

echo "Salut tout le monde" | mail -s "Sujet de l'email" contact@domaine.com -c contact_cc@domaine.com -b contact_bi@domaine.com

Email avec pièce jointe

echo "Envoi d'une pièce jointe." | mutt -a backup.zip -s "Sujet de l'email" contact@domaine.com

Archiver les emails sous Evolution

Ce script permet d’archiver tous les mails (sous évolution) antérieurs à 2009:

#!/bin/bash
# Shutdown application
gconftool-2 --shutdown
evolution --force-shutdown
SOURCE_EVOLUTION="$HOME/.evolution/mail/local/"
BACKUP_FOLDER="$HOME/mail-archives/"
EVOLUTION_DIRS="/tmp/evolution_dirs"
if [ $1 == "-n" ]
then
DRY_RUN="-n"
else
DRY_RUN=""
fi
if [ ! -e $BACKUP_FOLDER ]
then
mkdir $BACKUP_FOLDER
echo -e "$BACKUP_FOLDER created"
fi
echo -e "Backup will be done here: $BACKUP_FOLDER"
find $SOURCE_EVOLUTION | perl -ape 's#^.*(index|data|msf|meta|cmeta|summary|gz|bd|journal).*\n$##g' | sort -u | sed -e'1d' > $EVOLUTION_DIRS
while read dir
do
for year in 2008
do
echo -e ""
echo -e "archivemail on $dir for $year ..."
#year plus one
year_po=$((year + 1))
archivemail $DRY_RUN -o $BACKUP_FOLDER -D "1 Jan $year_po" -s _$year "$dir"
echo -e "archivemail on $dir for $year [OK]"
echo -e ""
done
done < $EVOLUTION_DIRS

En ligne de commande:

evolution-backup --backup $HOME/evolution-backup.tar.gz

Source:

App

Recent Tweets

Catégories