borg-export-tar - Export archive contents as a tarball
Contents
Description
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: 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.
Examples
# 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"
Name
borg-export-tar - Export archive contents as a tarball
Options
See borg-common(1) for common options of Borg commands.
argumentsARCHIVE
archive to export
FILE output tar file. "-" to write to stdout instead.
PATH paths to extract; patterns are supported
optionalarguments--tar-filter
filter program to pipe data through
--list output verbose list of items (files, dirs, ...)
Exclusionoptions-ePATTERN, --excludePATTERN
exclude paths matching PATTERN
--exclude-fromEXCLUDEFILE
read exclude patterns from EXCLUDEFILE, one per line
--patternPATTERN
include/exclude paths matching PATTERN
--patterns-fromPATTERNFILE
read include/exclude patterns from PATTERNFILE, one per line
--strip-componentsNUMBER
Remove the specified number of leading path elements. Paths with fewer elements will be silently
skipped.
See Also
borg-common(1)Synopsis
borg [common options] export-tar [options] ARCHIVE FILE [PATH...]
