DOVEADM-BATCH(1)

NAME
doveadm-batch - Execute multiple commands for multiple users

SYNOPSIS
doveadm [-Dv] batch [-S socket_path] -A sep command sep command [...]
doveadm [-Dv] batch [-S socket_path] -F file sep command sep command [...]
doveadm [-Dv] batch [-S socket_path] -u usermask sep command sep command [...]

DESCRIPTION
The command doveadm batch is used to execute multiple doveadm(1) commands sequentially for multiple users. This is primarily an optimization where Dovecot can do all the mailbox operations for the same user at once, instead of having to go through the users multiple times.

In the first form doveadm(1) will loop over all users, defined in the configured user_db(s), and execute the sequence of commands for each of them.

In the second form doveadm(1) will loop over all users, listed in the given file.

In the third form the commands will be executed for each user matching the given usermask. @INCLUDE:global-options@

Command specific options: @INCLUDE:option-A@ @INCLUDE:option-F-file@ @INCLUDE:option-S-socket@ @INCLUDE:option-u-user@

ARGUMENTS

command
    Any doveadm(1) command, with arguments and options — except for the -A, -S and -u options.

sep A single character used as command separator, e.g. ':'. Be careful, unquoted characters, like ; or &, may be interpreted by your shell and doveadm(1) will never see them.

EXAMPLE
In this example we move seen mails, older than one month, for all example.net users to the alternative storage under /nfsmount:
mail_location = mdbox:~/mdbox:ALT=/nfsmount/%h/mdbox
The second command will remove messages with refcount=0 from the primary storage.

doveadm batch -u \*@example.net : altmove seen savedbefore 30d : purge
@INCLUDE:reporting-bugs@

SEE ALSO
doveadm(1)