targo

package module
v0.0.0-...-003788d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 20, 2016 License: BSD-3-Clause Imports: 6 Imported by: 2

README

targo - A Go package to create and extract tar archives

License Build Status GoDoc GoWalker

targo provides functions to create or extract tar archives. This package has no dependencies and relies only on the Go standard library.

Usage (full documentation here)

  • func Create(destPath, dirPath string) error: create a tar archive from dirPath into destPath.
  • func CreateInPlace(dirPath string) error: create a tar archive from dirPath "in-place", ie dirPath is removed once the archive has been created and a dirPath.tar file is created.
  • func Extract(destPath, archivePath string) error: extract a tar archive from archivePath into destPath.
  • func ExtractInPlace(archivePath string) error: extract a tar archive from archivePath "in-place", ie archivePath is removed after the archive has been extracted (note: it expects archivePath to have a file extension).

Notes

  • As pointed out in the documentation of Create and CreateInPlace (see #1), the use of filepath.Dir introduces different behavior depending on the way you define your path:
    • With '/foo/bar', filepath.Dir will consider 'bar' as the last token and return '/foo'. This will produce a tar archive with the 'bar' directory as the root directory of the archive.
    • With '/foo/bar/', filepath.Dir will consider '/.' as the last token and return '/foo/bar'. As a consequence, the content of the 'bar' directory will be placed at the root of the archive.

Documentation

Overview

Package targo provides functions to create or extract tar archives.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func Create

func Create(destPath, dirPath string) error

Create creates a tar archive from the directory specified by dirPath. The resulting tar archive format is in POSIX.1 format. Calling this function with dirPath having a trailing slash results in the content of dirPath to be used at the root level of the archive rather than the directory pointed out by dirPath itself.

Example

A path without an ending slash will produce a tar archive with the directory specified by dirPath at its root.

Create(bardirPath+".tar", bardirPath)
// Will result in a tar archive with bardir at its root level
Output:

Example (Slash)

A path with an ending slash will produce a tar archive with the content of the directory specified by dirPath at its root.

Create(bardirPath+".tar", bardirPath+"/")
// Will result in a tar archive with the files and folders inside bardir at
// its root level
Output:

func CreateInPlace

func CreateInPlace(dirPath string) error

CreateInPlace behaves just as Create but it creates the archive in place. This means that the original directory specified by dirPath is removed after the tar archive is created. The .tar suffix is automatically added to dirPath and is used as the name of the newly created archive.

func Extract

func Extract(destPath, archivePath string) error

Extract extracts a tar archive given its path.

func ExtractInPlace

func ExtractInPlace(archivePath string) error

ExtractInPlace extracts a tar archive, in place, given its path. The original tar archive is removed after extraction and only its content remains. Note that archivePath is expected to contain a file extension.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL