Provided by: dovecot-core_2.4.1+dfsg1-5ubuntu1_amd64 bug

NAME

       doveadm-search - Show a list of mailbox GUIDs and message UIDs matching given search query.

SYNOPSIS

       doveadm [GLOBAL OPTIONS] [-f formatter] search [-S socket_path] -A search_query

       doveadm [GLOBAL OPTIONS] [-f formatter] search [-S socket_path] -F file search_query

       doveadm [GLOBAL OPTIONS] [-f formatter] search [-S socket_path] --no-userdb-lookup search_query

       doveadm [GLOBAL OPTIONS] [-f formatter] search [-S socket_path] -u user search_query

DESCRIPTION

        command  is  used  to find matching messages. doveadm(1) will print the mailbox's guid and the message's
       uid for each match.

        options, doveadm(1) will print the fields

       In the first form, doveadm(1) will executed the

       In the second form, the command will be performed for all users listed in the given file.

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

       In the last form, only matching mails of the given user(s) will be searched.

GLOBAL OPTIONS

       Global doveadm(1)

       -D

           Enables verbosity and debug messages.

       -O

           Do not read any config file, just use defaults. The dovecot_storage_version setting defaults  to  the
           latest version, but can be overridden 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/dovecot.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 multiple settings, the -o option may be specified multiple times.

       -f formatter

           Specifies the formatter for formatting the output. Supported formatters are:

           flow

               prints each line with key=value pairs.

       pager

           prints each key: value pair on its own line and separates records with form feed character (^L).

       tab

           prints a table header followed by tab separated value lines.

       table

           prints a table header followed by adjusted value lines.

       This command uses by default the output formatter flow (without the key=prefix).

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 layout.

           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.

       -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

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

EXAMPLE

       Search  in  user  bob's  dovecot  mailboxes  all  messages which contains the word "todo" in the Subject:
       header:

         doveadm search -u bob mailbox dovecot\* subject todo

         3a94c928d66ebe4bda04000015811c6a   8
         3a94c928d66ebe4bda04000015811c6a   25
         3a94c928d66ebe4bda04000015811c6a   45

       The search command is mainly useful when used together with doveadm-fetch(1) command.

       For example to save message bodies of all messages from INBOX that have "todo" in subject, use:

         doveadm search -u bob mailbox INBOX subject todo
         while read guid uid; do
           doveadm fetch -u bob body mailbox-guid $guid uid $uid > msg.$uid
         done

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-query(7)

78ffb79                                            March 2025                                  DOVEADM-SEARCH(1)