All pastes #357135 Raw Edit

Something

public shellscript v1 · immutable
·published 2007-02-15 14:12 UTC
rendered paste body
#!/bin/bashMAILROOT=/usr/local/virtualDSPAM=/usr/local/bin/dspamLOGFILE=/var/log/dspam/fix.logCMDS=".Spam.IsSpam:spam:mv@|MBOX|/.Spam/cur/ .Spam.NotSpam:innocent:mv@|MBOX|/new/"ret=0echo "Start at "`date` >>${LOGFILE}for DOMAIN in ${MAILROOT}/*; do        DOMAIN_NAME=`echo ${DOMAIN} |sed -e "s:${MAILROOT}/::g"`        echo "Starting ${DOMAIN_NAME}" >>${LOGFILE}        for USER in ${DOMAIN}/*; do                USER_NAME=`echo ${USER} |sed -e "s:${DOMAIN}/::g"`                echo "Starting ${USER_NAME}" >>${LOGFILE}                for CMD in ${CMDS}; do                        FOLDER=`echo ${CMD} |awk -F: '{ print $1 }'`                        CLASS=`echo ${CMD} |awk -F: '{ print $2 }'`                        ACTION_P=`echo ${CMD} |awk -F: '{ print $3 }'`                        ACTION=`echo ${ACTION_P} |awk -F\@ '{ print $1 }'`                        ARG_P=`echo ${ACTION_P} |awk -F\@ '{ print $2 }'`                        ARG=`echo ${ARG_P} |sed -e "s:|MBOX|:${USER}:g"`                        echo "Doing folder: ${FOLDER}, classing as: ${CLASS}" >>${LOGFILE}                        echo "Action: ${ACTION}, Arg: ${ARG}" >>${LOGFILE}                        MAILDIR=${USER}/${FOLDER}                        if [[ -d ${MAILDIR} ]]; then                                for MSG in ${MAILDIR}/cur/* \                                           ${MAILDIR}/new/*; do                                        if [[ -a ${MSG} ]]; then                                                out=`cat ${MSG} |${DSPAM} --mode=teft \                                                        --user ${USER_NAME}@${DOMAIN_NAME} --class=${CLASS} --source=error 2>&1`                                                if [[ -z ${out} ]]; then                                                        echo "Exec: '"${ACTION} ${MSG} ${ARG}"'" >>${LOGFILE}                                                        ${ACTION} ${MSG} ${ARG}                                                else                                                        echo "Error message:" >>${LOGFILE}                                                        echo $out >>${LOGFILE}                                                        grep -m 1 -i "Subject:" ${MSG} >>${LOGFILE}                                                        echo -n "File:" ${MSG} >>${LOGFILE}                                                        echo >>${LOGFILE}                                                        echo >>${LOGFILE}                                                        ret=1                                                fi                                        fi                                done                        else                                echo "Maildir doesn't exist" >>${LOGFILE}                        fi                done        donedoneexit $ret# vim:sts=8:ts=8:sw=8:noet