dwww Home | Manual pages | Find package

DOVEADM-EXPUNGE(1)                  Dovecot                  DOVEADM-EXPUNGE(1)

NAME
       doveadm-expunge - Expunge messages matching given search query

SYNOPSIS
       doveadm [GLOBAL OPTIONS] expunge [-S socket_path] [-d] -A search_query

       doveadm   [GLOBAL   OPTIONS]  expunge  [-S  socket_path]  [-d]  -F  file
       search_query

       doveadm [GLOBAL OPTIONS]  expunge  [-S  socket_path]  [-d]  --no-userdb-
       lookup search_query

       doveadm   [GLOBAL   OPTIONS]  expunge  [-S  socket_path]  [-d]  -u  user
       search_query

DESCRIPTION
       This command can be used to expunge  mails  matching  the  given  search
       query.  It  is  typically  used  to  expunge old mails from users' Trash
       and/or Spam mailboxes. To test which messages a given search query would
       match, you can use doveadm fetch or doveadm search commands.

       In the first form, the command will be performed for all users.

       In the second form, doveadm(1) will expunge messages of the users listed
       in the given

       In the third form, the command will be performed for the user  contained
       in the USER environment variable.

       In the final form, only matching mails of the given user (s) will be ex-
       punged.

GLOBAL OPTIONS
       Global doveadm(1)

       -D

           Enables verbosity and debug messages.

       -O

           Do  not  read  any config file, just use defaults. The dovecot_stor-
           age_version setting defaults to the latest version, but can be over-
           ridden with

       -k

           Preserve entire environment for doveadm, not just import_environment
           setting.

       -v

           Enables verbosity, including progress counter.

       -i instance-name

           If using multiple Dovecot instances, choose the config file based on
           this instance name.

           See instance_name setting for more information.

       -c config-file

           Read configuration from the given config-file. By default  it  first
           reads  config  socket,  and  then  falls  back to /etc/dovecot/dove-
           cot.conf. You can also point this to config socket of some  instance
           running compatible version.

       -o setting=value

           Overrides  the  configuration setting from /etc/dovecot/dovecot.conf
           and from the userdb with the given value. In order to override  mul-
           tiple settings, the -o option may be specified multiple times.

OPTIONS
       -A

           If  the  -A option is present, the command will be performed for all
           users. Using this option  in  combination  with  system  users  from
           userdb  {  driver = passwd } is not recommended, because it contains
           also users with a  lower  UID  than  the  one  configured  with  the
           first_valid_uid setting.

           When   the   SQL   userdb   module  is  used,  make  sure  that  the
           userdb_sql_iterate_query setting setting matches your database  lay-
           out.

           When  using the LDAP userdb module, make sure that the userdb_fields
           setting and userdb_ldap_iterate_fields setting settings  match  your
           LDAP schema. Otherwise doveadm(1) will be unable to iterate over all
           users.

       -d

           Delete the mailbox if it is empty after expunging.

       -F file

           Execute  the  command for all the users in the file. This is similar
           to the -A option, but instead of getting the list of users from  the
           userdb,  they  are  read  from the given file. The file contains one
           username per line.

       --no-userdb-lookup

           Do not perform userdb lookup. Use the USER environment  variable  to
           specify the username.

       -S socket_path

           The option's argument is either an absolute path to a local UNIX do-
           main  socket,  or  a  hostname and port (hostname:port), in order to
           connect a remote host via a TCP socket.

           This allows an administrator to  execute  doveadm(1)  mail  commands
           through the given socket.

       -u user/mask

           Run  the  command only for the given user. It's also possible to use
           '*' and '?' wildcards (e.g. -u *@example.org).

ARGUMENTS
       search_query

           Expunge messages matching this  search  query.  See  doveadm-search-
           query(7) for details.

EXAMPLE
       This  example expunges messages from Spam mailbox that were saved/copied
       there more than two weeks ago:

         doveadm expunge -u jane.doe@example.org mailbox Spam savedbefore 2w

REPORTING BUGS
       Report bugs, including doveconf -n output, to the Dovecot  Mailing  List
       dovecot@dovecot.org⟩. Information about reporting bugs is available at:
       https://dovecot.org/bugreport.html

SEE ALSO
       doveadm(1), doveadm-search(1)

78ffb79                            March 2025                DOVEADM-EXPUNGE(1)

Generated by dwww version 1.16 on Tue Dec 16 05:56:52 CET 2025.