X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=blobdiff_plain;f=gma.sh;h=d914893960534fbae5ebe290dca5e70dcf4d4ee2;hb=0c7aaabde9bf206dd017f468bf5af86e2efb22dd;hp=1e79c72c96bbf3ba7d183730e433bdd3127aa3fe;hpb=20794e99b3635c6b364f536631d779f8f3d78b28;p=scripts.git diff --git a/gma.sh b/gma.sh index 1e79c72..d914893 100755 --- a/gma.sh +++ b/gma.sh @@ -20,16 +20,23 @@ set -e function usage () { - echo "gma.sh [--body] [--keepspam] [--subject|--from|--to|--fromto] []" + echo "gma.sh [--body] [--nospam] [--subject|--from|--to|--fromto|--sender] []" } RESULT_MBOX="/tmp/gma" +KEEP_SPAM=1 if [[ -z "${MAIL_ARCHIVE_DIR}" ]]; then echo "Undefined \$MAIL_ARCHIVE_DIR" >&2 exit 1 fi +if [[ $(which ionice) ]]; then + IONICE="ionice -c3" +else + IONICE="" +fi + HEADER_ONLY="-H" while [[ $1 ]]; do @@ -45,8 +52,12 @@ while [[ $1 ]]; do HEADER_ONLY="" ;; - "--keepspam") - KEEP_SPAM=1 + "--intense") + IONICE="" + ;; + + "--nospam") + KEEP_SPAM=0 ;; "--from") @@ -61,6 +72,10 @@ while [[ $1 ]]; do RE_PREFIX="^(From|To):.*" ;; + "--sender") + RE_PREFIX="^Sender:.*" + ;; + "--subject") RE_PREFIX="^Subject:.*" ;; @@ -99,15 +114,15 @@ echo "Looking for ${RE_PREFIX}${PATTERN}" echo " in ${FILE_PATTERN}" echo " writing result in ${RESULT_MBOX}" -if [[ ${KEEP_SPAM} ]]; then +if [[ ${KEEP_SPAM} == "1" ]]; then - cat ${FILE_PATTERN} \ + ${IONICE} cat ${FILE_PATTERN} \ | pv -s ${SIZE} -p -t -e - \ | mboxgrep ${HEADER_ONLY} -i "${RE_PREFIX}${PATTERN}" > ${RESULT_MBOX} else - cat ${FILE_PATTERN} \ + ${IONICE} cat ${FILE_PATTERN} \ | pv -s ${SIZE} -p -t -e - \ | mboxgrep ${HEADER_ONLY} -i "${RE_PREFIX}${PATTERN}" \ | mboxgrep ${HEADER_ONLY} -v '^Subject:.*SPAM' > ${RESULT_MBOX}