TAR (.tar, .tgz, .tb2, .tbz2, .tar.gz, .tar.bz2)

Background & Context

    • MIME types: application/tar, application/x-tar
    • TAR archive file format.
    • Combines collections of files in a single archive.
    • Popular on Unix systems.
    • Often used in combination with compression utilities.
    • The extensions .tgz, .tb2, and .tbz2 are supported for GZIP or BZIP2-compressed TAR files.
    • TAR is an acronym derived from Tape Archive.
    • Stores files sequentially and without using compression, while preserving file system information and directory structures.
    • Does not support encryption or compression.
    • Part of the POSIX.1-1998 and POSIX.1-2001 standards.

Import & Export

  • When importing files from a TAR archive, the specific converter for each format will be used.
  • Import["file.tar"] returns an expression of the form {"fn1", "fn2",}, giving full path specifications for all files in "file.zip".
  • Import["file.tar",elem] imports the specified element from a TAR file.
  • Import["file.tar","fn"] extracts "fn" from the archive and imports it.
  • Import["file.tar",{elem,suba,subb,}] imports a subelement.
  • Import["file.tar",{{elem1,elem2,}}] imports multiple elements.
  • Import["file","TAR"] or Import["file",{"TAR",elem,}] imports any file as a TAR archive.
  • Export["file.tar",expr,elem] creates a TAR archive by treating expr as specifying element elem.
  • Export["file.tar",{expr1,expr2,},{{elem1,elem2,}}] treats each expri as specifying the corresponding elemi.
  • Export["file.tar","fn"->expr] exports expr to a file and compresses it as a TAR archive, inferring the file format from the file extension of "fn".
  • Export["file.tar","fn1"->expr1,"fn2"->expr2,] exports multiple expressions to a TAR file archive.
  • See the following reference pages for full general information:
  • Import, Exportimport from or export to a file
    CloudImport, CloudExportimport from or export to a cloud object
    ImportString, ExportStringimport from or export to a string
    ImportByteArray, ExportByteArrayimport from or export to a byte array

Import Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Summary"summary of the file
    "Rules"list of rules for all available elements
  • The following can be used to select or specify individual files:
  • "FileNames"list of file names representing the contents of a TAR archive
    "filename"a single file
    "filename","format" a single file, taken to be in the specified format
    "filename","format",elemelement elem from the specified file
  • Import by default uses the "FileNames" element for the TAR format.
  • Import["file.tar","fn"] imports file "fn".
  • Import["file.tar",All] imports an entire TAR archive.
  • File names can include relative or absolute directory specifications and the abbreviated string patterns supported by StringMatchQ.
  • Import["file.tar","dir/*.jpg"] imports all JPEG files from subdirectory dir.
  • Export["file.tar","file1.gif"->expr1,"file2.txt"->expr2] creates an archive containing a GIF and a text file.
  • Export["file",{expr1,expr2},{"TAR",{{"file1","GIF"},{"file2","Text"}}}] is equivalent to the above.

Examples

open allclose all

Basic Examples  (1)

This creates a TAR file that contains a PNG file and a text file:

Importing a TAR archive gives the names of the files in the archive by default:

Import all files using their default element:

Extract and import the PNG file:

Extract and import all text files:

Scope  (1)

Elements for a TAR archive:

Extract available elements for one of the files in the TAR archive:

Import some elements from one of the files in the archive:

Import the default element for multiple files with different formats:

Import Elements  (1)

"FileNames"  (1)

Get the names of all files in a TAR archive:

This is also the default element:

Properties & Relations  (1)

Get some text to export:

Compare ZIP, TARGZ, TARBZ2 and TARZST compression to the uncompressed size:

Compare ZIP, TARGZ, TARBZ2 and TARZST compression speeds: