From: Don Armstrong Date: Wed, 18 May 2016 17:09:51 +0000 (-0700) Subject: remove things which have appropriate rules X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=846faea524b838ce15a132b3dd2a93f5edf2565f;p=bin.git remove things which have appropriate rules --- diff --git a/learn_from_spam b/learn_from_spam index 5644096..aca7f21 100755 --- a/learn_from_spam +++ b/learn_from_spam @@ -10,6 +10,10 @@ SPAM_REPORT="spamc --learntype=spam" HAM_REPORT="spamc --learntype=ham" SPAM_CHECK="spamc -c" +# needs rules directories +NEEDS_SPAM_RULES=~/Maildir/spam/needs_rules/cur/ +NEEDS_HAM_RULES=~/Maildir/spam/needs_ham_rules/cur/ + if [ "$(basename $0)" = "learn_from_spam" ]; then for file in "$@"; do if ! formail -c < "$file"|grep -q '^List-Id'; then @@ -23,9 +27,11 @@ if [ "$(basename $0)" = "learn_from_spam" ]; then trap "rm -f '$TMP'/file; rmdir '$TMP'" EXIT # this message is still not spam; may need custom rules spamc < "$file" > "$TMP/file" 2>/dev/null; - mv "$TMP/file" ~/Maildir/spam/needs_rules/cur/"$(basename "$file")"; + mv "$TMP/file" "${NEEDS_SPAM_RULES}$(basename "$file")"; trap - EXIT; rmdir "$TMP"; + elif [ "$file" = "${NEEDS_SPAM_RULES}$(basename "$file")" ]; then + rm -f "$file"; fi; done; elif [ "$(basename $0)" = "learn_from_ham" ]; then @@ -37,9 +43,11 @@ elif [ "$(basename $0)" = "learn_from_ham" ]; then TMP="$(mktemp -d)" trap "rm -f '$TMP'/file; rmdir '$TMP'" EXIT spamc < "$file" > "$TMP/file" 2>/dev/null; - mv "$TMP/file" ~/Maildir/spam/needs_ham_rules/cur/"$(basename "$file")"; + mv "$TMP/file" "${NEEDS_HAM_RULES}$(basename "$file")"; trap - EXIT; rmdir "$TMP"; + elif [ "$file" = "${NEEDS_HAM_RULES}$(basename "$file")" ]; then + rm -f "$file"; fi; done; else