logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

borg-extract - Extract archive contents

Author

       The Borg Collective

                                                   2025-01-03                                    BORG-EXTRACT(1)

Description

       This command extracts the contents of an archive. 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.

       By using --dry-run, you can do all extraction steps except actually  writing  the  output  data:  reading
       metadata and data chunks from the repo, checking the hash/hmac, decrypting, decompressing.

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

       NOTE:
          Currently, extract always writes into the current working directory ("."), so make sure you cd to  the
          right place before calling borgextract.

          When  parent  directories  are  not  extracted (because of using file/directory selection or any other
          reason), borg can not restore parent directories' metadata, e.g. owner, group, permission, etc.

Examples

          # Extract entire archive
          $ borg extract my-files

          # Extract entire archive and list files while processing
          $ borg extract --list my-files

          # Verify whether an archive could be successfully extracted, but do not write files to disk
          $ borg extract --dry-run my-files

          # Extract the "src" directory
          $ borg extract my-files home/USERNAME/src

          # Extract the "src" directory but exclude object files
          $ borg extract my-files home/USERNAME/src --exclude '*.o'

          # Restore a raw device (must not be active/in use/mounted at that time)
          $ borg extract --stdout my-sdx | dd of=/dev/sdx bs=10M

Name

       borg-extract - Extract archive contents

Options

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

   argumentsNAME   specify the archive name

       PATH   paths to extract; patterns are supported

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

       -n, --dry-run
              do not actually change any files

       --numeric-ids
              only obey numeric user and group identifiers

       --noflags
              do not extract/set flags (e.g. NODUMP, IMMUTABLE)

       --noacls
              do not extract/set ACLs

       --noxattrs
              do not extract/set xattrs

       --stdout
              write all extracted data to stdout

       --sparse
              create holes in output sparse file from all-zero chunks

       --continue
              continue a previously interrupted extraction of same archive

   Include/Excludeoptions-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), borg-mount(1)

Synopsis

       borg [common options] extract [options] NAME [PATH...]

See Also