backdown

backdown search

Search inside things: mail by subject, sender and recipient; database dumps and SQLite files by table, column and, at full depth, the text in their rows. Reuses Dovecot's own index for mail headers and SQLite's full-text tables in place.

On this page
backdown search [OPTIONS] [Q]...

Arguments

[Q]...
Words to find (all of them; a phrase in quotes).

Options

--kind <KIND>
Only messages, tables or rows.
--build
Build or update the index first (the service does this after each scan).
--force
With --build: index everything again, not only drives scanned since.
--depth <DEPTH>
How much to index from now on: off, headers (the default) or full.
--limit <LIMIT>
Default: 50.
--json
Print it as JSON, for scripts.

Also takes the global options --db and --local.

Good to know

Names are found by the search box and find; this searches inside things. Mail: every message's subject, sender, recipients and date, from Dovecot's own index (dovecot.index.cache) where a mailbox has one, else from the message files (headers only). Dumps and SQLite files: every table with its columns (and which columns the database indexed for full text), and at --depth full the text in the rows, text-typed columns only, up to 64 MiB a file. A SQLite full-text table (FTS3/4/5) is searched in place, through SQLite itself. The index keeps no copy of the text, only where each hit is. The service indexes after each recognition; --build does it now, skipping what is already indexed for the same scan.

Examples

backdown search invoice 2021
# a phrase, and only mail
backdown search "garden work" --kind message
# build the index now, then see what is indexed
backdown search --build
backdown search
# index the text in rows too, from the next build on
backdown search --depth full --build

See also

Last updated · What's released, and what's next