borg [common options] repo-list [options]
options |
||
|
only print the archive IDs, nothing else |
|
|
repository is Borg 1.x |
|
|
specify format for archive listing (default: “{id:.8} {time} {archive:<15} {tags:<10} {username:<10} {hostname:<10} {comment:.40}{NL}”) |
|
|
comma-separated list of archive attributes to group the listed archives by; valid keys are: name, host, user, tags; default is to not group |
|
|
Format output as JSON. The form of |
|
Archive filters — Archive filters can be applied to repository targets. |
||
|
only consider archives matching all patterns. See “borg help match-archives”. |
|
|
Comma-separated list of sorting keys; valid keys are: timestamp, archive, name, id, tags, host, user; default is: timestamp |
|
|
consider the first N archives after other filters are applied |
|
|
consider the last N archives after other filters are applied |
|
|
consider archives between the oldest archive’s timestamp and (oldest + TIMESPAN), e.g., 7d or 12m. |
|
|
consider archives between the newest archive’s timestamp and (newest - TIMESPAN), e.g., 7d or 12m. |
|
|
consider archives older than (now - TIMESPAN), e.g., 7d or 12m. |
|
|
consider archives newer than (now - TIMESPAN), e.g., 7d or 12m. |
|
|
consider only soft-deleted archives. |
|
This command lists the archives contained in a repository.
--group-by lists the archives grouped by the given comma-separated archive
attributes, each group preceded by a header line naming it:
$ borg repo-list --group-by name,host --format '{archive} {time}{NL}'
Group (name='home', host='host1'):
home Thu, 2026-06-04 18:00:00 +0200
home Wed, 2026-06-03 18:00:00 +0200
Group (name='home', host='host2'):
home Thu, 2026-06-04 19:00:00 +0200
Valid keys are name, host, user and tags; borg’s internal tags (starting
with @) do not affect grouping. Archives without host / user metadata (e.g.
archives transferred from a borg 1.x repository) form their own group.
These are the same keys and the same grouping that borg prune --group-by uses, so
this is a way to see which archives a prune run will consider together before running
it. Without --group-by, archives are listed as before, ungrouped.
With --json, no header lines are emitted; each archive gets a group object
instead.
The --format option uses Python’s format string syntax.
Examples:
$ borg repo-list --format '{archive}{NL}'
ArchiveFoo
ArchiveBar
...
# {VAR:NUMBER} - pad to NUMBER columns.
# Strings are left-aligned, numbers are right-aligned.
# Note: the time keys (time, start, end) can not be padded - for them, the
# format spec is a strftime format string, e.g. {time:%Y-%m-%d}.
$ borg repo-list --format '{archive:36} {time} [{id}]{NL}'
ArchiveFoo Thu, 2021-12-09 10:22:28 [0b8e9...3b274]
...
The following keys are always available:
NEWLINE: OS dependent line separator
NL: alias of NEWLINE
NUL: NUL character for creating print0 / xargs -0 like output
SPACE: space character
TAB: tab character
CR: carriage return character
LF: line feed character
Keys available only when listing archives in a repository:
archive: archive name
name: alias of “archive”
comment: archive comment
id: internal ID of the archive
tags: archive tags
time: nominal time of the archive
start: start time of the archive operation
end: end time of the archive operation
command_line: command line which was used to create the archive
hostname: hostname of host on which this archive was created
username: username of user who created this archive
size: size of this archive (data plus metadata, not considering compression and deduplication)
nfiles: count of files in this archive
$ borg repo-list
76fcb5c7 Sat, 2026-08-29 14:36:22 +0200 docs tw MacBook-Pro this is a comment
19356ae3 Sat, 2026-08-29 14:36:23 +0200 scripts tw MacBook-Pro
7dd5756a Sat, 2026-08-29 14:36:23 +0200 scripts tw MacBook-Pro
99b712ef Sat, 2026-08-29 14:36:23 +0200 src tw MacBook-Pro
7698cd9e Sat, 2026-08-29 14:36:24 +0200 scripts tw MacBook-Pro
f49f8762 Sat, 2026-08-29 14:36:24 +0200 docs tw MacBook-Pro
...