borg-export-tar - Export archive contents as a tarball

NAME  SYNOPSIS  DESCRIPTION  OPTIONS  arguments  options  Include/Exclude options  EXAMPLES  SEE ALSO  AUTHOR 


borg-export-tar − Export archive contents as a tarball


borg [common options] export−tar [options] ARCHIVE FILE [PATH...]


This command creates a tarball from an archive.

When giving '−' as the output FILE, Borg will write a tar stream to standard output.

By default (−−tar−filter=auto) Borg will detect whether the FILE should be compressed based on its file extension and pipe the tarball through an appropriate filter before writing it to FILE:

.tar.gz or .tgz: gzip

.tar.bz2 or .tbz: bzip2

.tar.xz or .txz: xz

.tar.zstd or .tar.zst: zstd

.tar.lz4: lz4

Alternatively, a −−tar−filter program may be explicitly specified. It should read the uncompressed tar stream from stdin and write a compressed/filtered tar stream to stdout.

The generated tarball uses the GNU tar format.

export−tar is a lossy conversion: BSD flags, ACLs, extended attributes (xattrs), atime and ctime are not exported. Timestamp resolution is limited to whole seconds, not the nanosecond resolution otherwise supported by Borg.

A −−sparse option (as found in borg extract) is not supported.

By default the entire archive is extracted but a subset of files and directories can be selected by passing a list of PATHs as arguments. The file selection can further be restricted by using the −−exclude option.

For more help on include/exclude patterns, see the borg_patterns command output.

−−progress can be slower than no progress display, since it makes one additional pass over the archive metadata.


See borg−common(1) for common options of Borg commands.



archive to export


output tar file. "−" to write to stdout instead.


paths to extract; patterns are supported



filter program to pipe data through


output verbose list of items (files, dirs, ...)

Include/Exclude options


exclude paths matching PATTERN

−−exclude−from EXCLUDEFILE

read exclude patterns from EXCLUDEFILE, one per line

−−pattern PATTERN

include/exclude paths matching PATTERN

−−patterns−from PATTERNFILE

read include/exclude patterns from PATTERNFILE, one per line

−−strip−components NUMBER

Remove the specified number of leading path elements. Paths with fewer elements will be silently skipped.


# export as uncompressed tar
$ borg export−tar /path/to/repo::Monday Monday.tar

# exclude some types, compress using gzip
$ borg export−tar /path/to/repo::Monday Monday.tar.gz −−exclude '*.so'

# use higher compression level with gzip
$ borg export−tar −−tar−filter="gzip −9" testrepo::linux Monday.tar.gz

# export a tar, but instead of storing it on disk,
# upload it to a remote site using curl.
$ borg export−tar /path/to/repo::Monday − | curl −−data−binary @− https://somewhere/to/POST

# remote extraction via "tarpipe"
$ borg export−tar /path/to/repo::Monday − | ssh somewhere "cd extracted; tar x"




The Borg Collective

Updated 2024-01-29 - |