How to move mail from one user's folder to another, or to send it for external delivery
From Zimbra :: Wiki
| |
How to move mail messages from one user's mail folder to another user
(or to send them to external delivery).
- First you need to identify zimbra store folder of this user, like
mysql -e "select * from zimbra.mailbox where comment like 'user@domain.com'"
- Then you need to prepare file with a lot of lines, like 1/25+1 of number of messages in his folder needed to copy. If, for example, the messages from folder /test need to be moved, then this file should have the first line: "search -t message 'in:test'" and all other lines: "search -n" (means "give next page of the search results"), like:
search -t message 'in:test'
search -n
search -n
....
search -n
- Then you feed this file to zmmailbox to get message IDs:
zmmailbox -z -m user@impulse.net messagelist.txt
- And then we ready to get all the messages in the format ready to feed them to sendmail:
for i in `grep '^[0-9]' messagelist.txt | awk '{print $2}' | sed 's/-//'`; do
find /opt/zimbra/store/0//msg/ -name $i\* >> filelist.txt
done
for i in `cat filelist.txt`; do
zmmailbox -z -m am $i;
done
(if there are a lot of messages, it's better to create a file with lines "am $i" and to feed them to zmmailbox because it starts slowly.
- If the messages should be sended to external domain, then the last step may be something like this:
for i in `grep '^[0-9]' messagelist.txt | awk '{print $2}' | sed 's/-//'`; do
find /opt/zimbra/store/0//msg/ -name $i\* >> filelist.txt;
done
for i in `cat filelist.txt`; do
sendmail -i <$i;
done
| Verified Against: unknown | Date Created: 8/20/2008 |
| Article ID: http://wiki.zimbra.com/index.php?title=How_to_move_mail_from_one_user%27s_folder_to_another,_or_to_send_it_for_external_delivery | Date Modified: 9/22/2008 |
