Допустим, у вас есть каталог с десятками тысяч сообщений. И вы хотите отделить спам от не-спама.
В частности, вы хотели бы:
Какую команду вы можете запустить для этого? Например, какой-то псевдокод:
/usr/local/bin/spamassassin -eL ./Maildir/cur/* | grep "X-Spam-Flag: YES" | mv %1 /tmp/spam
Ваша первая догадка была довольно близкой :-)
Я сделал bash-скрипт для сканирования всего почтового ящика на спам
#!/bin/bash
DIR="/home/vmail/example.net/exampleuser/cur/"
for f in $(ls $DIR); do
spamassassin -Le "$DIR/$f" > /dev/null
ERR=$?
echo $ERR
if [ $ERR -gt 0 ]; then
mv "$DIR/$f" /tmp/spam/
else
echo "This was no spam."
fi
done
Сохраните это как mailcleanup.sh где-нибудь, укажите путь к папке, которую вы хотите сканировать, как DIR, установите ее + x и запустите.
Удачи!
Закончилось этим долгим путем, без использования spamassassin: