All command lines were executed against scratch repositories and all
output samples regenerated from real runs (prettified, not invented):
- recreate: the example used the removed --recompress; show
borg repo-compress instead; refresh the borg info samples.
- diff: default/text output has modified:/added:/removed: labels and
mtime/ctime brackets now; the JSON-lines example used borg1 keys
and lacked --json-lines on the command; add --content-only.
- mount: example passed the repository as a positional (it would have
been taken as the mountpoint); use -r.
- tar: the archive-copy loop was a bash syntax error and used
borg list with repo-list-only format keys; replaced with a working
while-read loop over borg repo-list (verified end-to-end, identical
archive contents in the destination repo).
- key: regenerate repo-create/change-passphrase samples (hex-id named
keyfiles, Key location line, no "Synchronizing index"); the import
example silently did nothing without --key-location=keyfile; fix
the Windows keys path (AppData\Local, not Roaming); explain why the
keyfile name changes on passphrase change.
- transfer: the borg1->borg2 upgrade steps were missing --from-borg1
and used a ssh:// destination URL (rejected for current repos);
fix the Windows keys path.
- notes: --noatime and --nobsdflags no longer exist (atime is opt-in
via --atime); stray "|" removed.
- compact: segments wording removed.
- info/repo-info/repo-delete/list/find: output samples regenerated
(new labels/order, UTC offsets, repo version line, prompt text;
isomtime format and symlink size corrected in list).
- general: fix broken inline markup (stray backtick).
- serve: the authorized_keys forced command needs --rest (it is
deliberately not client-suppliable); document the actual client
argument allowlist including --backend.
Co-Authored-By: Claude Fable 5 <[email protected]>
borg find iterates over the archives selected by the usual archive
filter options (all archives by default) from newest to oldest, over
all items of each archive, and outputs one line per item matching the
given PATHs (paths or patterns, matching like in borg list /
borg extract).
Output lines are formatted like borg list default output, but are
prefixed with a short archive ID and the archive name. As the
archives of a series all share the same name, only the archive ID
uniquely identifies the archive.
Output is customizable via --format / BORG_FIND_FORMAT (ItemFormatter
keys) and --json-lines.
There is no extra index for file paths (keeping one up to date would
cost considerable runtime and space), so this reads the metadata of
all selected archives.