borg [common options] list [options] NAME [PATH...]
positional arguments |
||
|
specify the archive name |
|
|
paths to list; patterns are supported |
|
optional arguments |
||
|
only print file/directory names, nothing else |
|
|
specify format for file listing (default: “{mode} {user:6} {group:6} {size:8} {mtime} {path}{extra}{NL}”) |
|
|
Format output as JSON Lines. The form of |
|
Include/Exclude options |
||
|
exclude paths matching PATTERN |
|
|
read exclude patterns from EXCLUDEFILE, one per line |
|
|
include/exclude paths matching PATTERN |
|
|
read include/exclude patterns from PATTERNFILE, one per line |
This command lists the contents of an archive.
For more help on include/exclude patterns, see the borg help patterns command output.
The --format
option uses python’s format string syntax.
Examples:
$ borg list --format '{mode} {user:6} {group:6} {size:8} {mtime} {path}{extra}{NL}' ArchiveFoo
-rw-rw-r-- user user 1024 Thu, 2021-12-09 10:22:17 file-foo
...
# {VAR:<NUMBER} - pad to NUMBER columns left-aligned.
# {VAR:>NUMBER} - pad to NUMBER columns right-aligned.
$ borg list --format '{mode} {user:>6} {group:>6} {size:<8} {mtime} {path}{extra}{NL}' ArchiveFoo
-rw-rw-r-- user user 1024 Thu, 2021-12-09 10:22:17 file-foo
...
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 files in an archive:
type: file type (file, dir, symlink, …)
mode: file mode (as in stat)
uid: user id of file owner
gid: group id of file owner
user: user name of file owner
group: group name of file owner
path: file path
target: link target for symlinks
hlid: hard link identity (same if hardlinking same fs object)
flags: file flags
size: file size
num_chunks: number of chunks in this file
mtime: file modification time
ctime: file change time
atime: file access time
isomtime: file modification time (ISO 8601 format)
isoctime: file change time (ISO 8601 format)
isoatime: file access time (ISO 8601 format)
blake2b
blake2s
md5
sha1
sha224
sha256
sha384
sha3_224
sha3_256
sha3_384
sha3_512
sha512
xxh64: XXH64 checksum of this file (note: this is NOT a cryptographic hash!)
archiveid: internal ID of the archive
archivename: name of the archive
extra: prepends {target} with “ -> “ for soft links and “ link to “ for hard links
health: either “healthy” (file ok) or “broken” (if file has all-zero replacement chunks)
$ borg list root-2016-02-15
drwxr-xr-x root root 0 Mon, 2016-02-15 17:44:27 .
drwxrwxr-x root root 0 Mon, 2016-02-15 19:04:49 bin
-rwxr-xr-x root root 1029624 Thu, 2014-11-13 00:08:51 bin/bash
lrwxrwxrwx root root 0 Fri, 2015-03-27 20:24:26 bin/bzcmp -> bzdiff
-rwxr-xr-x root root 2140 Fri, 2015-03-27 20:24:22 bin/bzdiff
...
$ borg list root-2016-02-15 --pattern "- bin/ba*"
drwxr-xr-x root root 0 Mon, 2016-02-15 17:44:27 .
drwxrwxr-x root root 0 Mon, 2016-02-15 19:04:49 bin
lrwxrwxrwx root root 0 Fri, 2015-03-27 20:24:26 bin/bzcmp -> bzdiff
-rwxr-xr-x root root 2140 Fri, 2015-03-27 20:24:22 bin/bzdiff
...
$ borg list archiveA --format="{mode} {user:6} {group:6} {size:8d} {isomtime} {path}{extra}{NEWLINE}"
drwxrwxr-x user user 0 Sun, 2015-02-01 11:00:00 .
drwxrwxr-x user user 0 Sun, 2015-02-01 11:00:00 code
drwxrwxr-x user user 0 Sun, 2015-02-01 11:00:00 code/myproject
-rw-rw-r-- user user 1416192 Sun, 2015-02-01 11:00:00 code/myproject/file.ext
-rw-rw-r-- user user 1416192 Sun, 2015-02-01 11:00:00 code/myproject/file.text
...
$ borg list archiveA --pattern '+ re:\.ext$' --pattern '- re:^.*$'
-rw-rw-r-- user user 1416192 Sun, 2015-02-01 11:00:00 code/myproject/file.ext
...
$ borg list archiveA --pattern '+ re:.ext$' --pattern '- re:^.*$'
-rw-rw-r-- user user 1416192 Sun, 2015-02-01 11:00:00 code/myproject/file.ext
-rw-rw-r-- user user 1416192 Sun, 2015-02-01 11:00:00 code/myproject/file.text
...