doveadm-expunge(1) - phpMan

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
       expunged.
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
           overridden with
       -k
           Preserve entire environment for doveadm, not  just  import_environ-
           ment 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
           domain  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 AT example.org mailbox Spam savedbefore 2w
REPORTING BUGS
       Report bugs, including doveconf -n output, to the Dovecot Mailing  List
       <dovecot AT 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)