diff --git a/bin/mailarchive b/bin/mailarchive new file mode 100755 index 0000000..a81ae2b --- /dev/null +++ b/bin/mailarchive @@ -0,0 +1,24 @@ +#!/bin/sh + +if [ -z "$2" ]; then + >&2 echo "Usage: $0 " + exit 1 +fi + +src="$1" +arch="$2" +begin="2010" + +if ! [ -d "$arch/cur" ]; then + >&2 echo "Folder $arch does not appear to be a maildir" + exit 1 +fi + +umask 700 + +for y in $(seq "$begin" "$(date '+%Y')" | sort -r); do + mkdir -p "$arch/$y/cur" "$arch/$y/new" "$arch/$y/tmp" + mails=$(mlist "$src" | mpick -t "date <= \"$y-12-31\" && date >= \"$y-01-01\" && date < \"-180d\"" 2> /dev/null) + >&2 printf 'The year is %s. %s emails to sort\n' "$y" "$(echo "$mails" | wc -l)" + echo "$mails" | mrefile "$arch/$y" +done