-cd ~/Maildir
-# Build lists sublists
-find lists -maxdepth 1 -mindepth 1 -type d |perl -ne 'chomp; $a = $_; $b = $a; $b =~ s/\./_/g; $b =~ s/\//./g; qx(ln -sf $a .$b)'
-# Build bugs sublists
-find bugs -maxdepth 1 -mindepth 1 -type d |perl -ne 'chomp; $a = $_; $b = $a; $b =~ s/\./_/g; $b =~ s/\//./g; qx(ln -sf $a .$b)'
-
-# Remove dead lists
-#find ~/Maildir/lists/ -type d -maxdepth 1 -mindepth 1|xargs -n 1 -i sh -c '(( $(find "{}" -type f -iname "*" |wc -l) <= 1 )) && rm -rf "{}"'
-
-find ~/Maildir/lists/ -maxdepth 1 -mindepth 1 -type d|xargs -n 1 -i sh -c 'A={}; (( $(find $A -type f -name "*" -not -name "dovecot*" | wc -l) == 0 )) && rm -rf $A'
-find ~/Maildir/bugs/ -maxdepth 1 -mindepth 1 -type d|xargs -n 1 -i sh -c 'A={}; (( $(find $A -type f -name "*" -not -name "dovecot*" |wc -l) == 0 )) && rm -rf $A'
+for listdir in lists bugs; do
+ ( cd ~/Maildir;
+ find $listdir -maxdepth 1 -mindepth 1 -type d | \
+ perl -ne 'chomp; $a = $_; $b = $a; $b =~ s/\./_/g; $b =~ s/\//./g; qx(ln -sf "$a" ".$b")';
+ );
+ ( cd ~/Maildir/$listdir;
+ find . -maxdepth 1 -mindepth 1 -type d| \
+ xargs -n 1 -i bash -c 'A={}; (( $(find "$A" -type f -name "*" -not -name "dovecot*" -not -name ".imap*" -not -name ".customflags" | wc -l) == 0 )) && rm -rf "$A"';
+ );
+done;