Wenn „some_command” mir eine Liste von Usernamen und deren (virtuellen) Home-Verzeichnissen ausgibt:
CODE:
some_command | while read USER HOME; do
export USER HOME
echo ". list * *" | /usr/sbin/dovecot --exec-mail imap | \
awk '($2 == "LIST"){print $5}' | while read mailbox
do
cat << EOF | /usr/sbin/dovecot --exec-mail imap
. select $mailbox
. search text foo
. search body foo
EOF
done > /dev/null
done
Natürlich nicht ganz so, zuviel fork(2), aber ich will in's Bett. Sobald ich mir da was überlegt habe, update ich das hier einfach. Nifty!