Provided by: notmuch_0.29.3-1ubuntu2_amd64 bug

NAME

       notmuch-search - search for messages matching the given search terms

SYNOPSIS

       notmuch search [option ...] <search-term> ...

DESCRIPTION

       Search  for  messages  matching the given search terms, and display as results the threads
       containing the matched messages.

       The output consists of one line per thread, giving a thread ID, the date of the newest (or
       oldest, depending on the sort option) matched message in the thread, the number of matched
       messages and total messages in the thread, the names of all participants  in  the  thread,
       and the subject of the newest (or oldest) message.

       See notmuch-search-terms(7) for details of the supported syntax for <search-terms>.

       Supported options for search include

       --format=(json|sexp|text|text0)
              Presents  the  results  in  either JSON, S-Expressions, newline character separated
              plain-text (default), or  null  character  separated  plain-text  (compatible  with
              xargs(1) -0 option where available).

       --format-version=N
              Use  the  specified structured output format version. This is intended for programs
              that invoke notmuch(1) internally. If omitted, the latest supported version will be
              used.

       --output=(summary|threads|messages|files|tags)

              summary
                     Output  a summary of each thread with any message matching the search terms.
                     The summary includes the thread ID, date, the  number  of  messages  in  the
                     thread  (both  the  number matched and the total number), the authors of the
                     thread and the subject. In the case where a thread contains  multiple  files
                     for  some messages, the total number of files is printed in parentheses (see
                     below for an example).

              threads
                     Output the thread IDs of all threads with any message  matching  the  search
                     terms,  either  one  per  line (--format=text), separated by null characters
                     (--format=text0), as a JSON array (--format=json), or an  S-Expression  list
                     (--format=sexp).

              messages
                     Output the message IDs of all messages matching the search terms, either one
                     per line (--format=text), separated by null characters (--format=text0),  as
                     a JSON array (--format=json), or as an S-Expression list (--format=sexp).

              files  Output  the  filenames of all messages matching the search terms, either one
                     per line (--format=text), separated by null characters (--format=text0),  as
                     a JSON array (--format=json), or as an S-Expression list (--format=sexp).

                     Note  that  each message may have multiple filenames associated with it. All
                     of them are included in the output (unless limited  with  the  --duplicate=N
                     option). This may be particularly confusing for folder: or path: searches in
                     a specified  directory,  as  the  messages  may  have  duplicates  in  other
                     directories  that  are  included  in  the output, although these files alone
                     would not match the search.

              tags   Output all tags that appear on any message matching the search terms, either
                     one per line (--format=text), separated by null characters (--format=text0),
                     as a JSON array (--format=json), or as an S-Expression list (--format=sexp).

       --sort=(newest-first|oldest-first)
              This  option  can  be  used  to  present  results  in  either  chronological  order
              (oldest-first) or reverse chronological order (newest-first).

              Note:  The  thread  order  will be distinct between these two options (beyond being
              simply reversed). When sorting by oldest-first the threads will be  sorted  by  the
              oldest message in each thread, but when sorting by newest-first the threads will be
              sorted by the newest message in each thread.

              By default, results will be displayed in reverse chronological order, (that is, the
              newest results will be displayed first).

       --offset=[-]N
              Skip  displaying the first N results. With the leading '-', start at the Nth result
              from the end.

       --limit=N
              Limit the number of displayed results to N.

       --exclude=(true|false|all|flag)
              A  message  is  called  "excluded"  if   it   matches   at   least   one   tag   in
              search.exclude_tags  that  does  not  appear  explicitly  in the search terms. This
              option specifies whether to omit excluded messages in the search process.

              true (default)
                     Prevent excluded messages from matching the search terms.

              all    Additionally prevent excluded messages from appearing in displayed  results,
                     in effect behaving as though the excluded messages do not exist.

              false  Allow  excluded  messages  to  match  search  terms  and appear in displayed
                     results. Excluded messages are still marked in the relevant outputs.

              flag   Only has an effect when --output=summary. The output is almost identical  to
                     false, but the "match count" is the number of matching non-excluded messages
                     in the thread, rather than the number of matching messages.

       --duplicate=N
              For --output=files, output the Nth filename associated with each  message  matching
              the  query (N is 1-based). If N is greater than the number of files associated with
              the message, don't print anything.

              For --output=messages, only output message IDs  of  messages  matching  the  search
              terms that have at least N filenames associated with them.

              Note  that  this  option  is  orthogonal with the folder: search prefix. The prefix
              matches messages based on filenames. This option filters filenames of the  matching
              messages.

EXAMPLE

       The  following  shows  an  example  of  the summary output format, with one message having
       multiple filenames.

          % notmuch search date:today.. and tag:bad-news
          thread:0000000000063c10 Today [1/1] Some Persun; To the bone (bad-news inbox unread)
          thread:0000000000063c25 Today [1/1(2)] Ann Other; Bears (bad-news inbox unread)
          thread:0000000000063c00 Today [1/1] A Thurd; Bites, stings, sad feelings (bad-news unread)

EXIT STATUS

       This command supports the following special exit status codes

       20     The requested format version is too old.

       21     The requested format version is too new.

SEE ALSO

       notmuch(1),  notmuch-config(1),   notmuch-count(1),   notmuch-dump(1),   notmuch-hooks(5),
       notmuch-insert(1),       notmuch-new(1),       notmuch-reply(1),       notmuch-restore(1),
       notmuch-search-terms(7), notmuch-show(1), notmuch-tag(1) notmuch-address(1)

AUTHOR

       Carl Worth and many others

COPYRIGHT

       2009-2020, Carl Worth and many others